# MSBuild

{% embed url="<https://learn.microsoft.com/ru-ru/cpp/build/projects-and-build-systems-cpp?view=msvc-170>" %}

**Visual Studio** использует MSBuild для загрузки и сборки управляемых проектов. Файлы проектов в Visual Studio (с расширением VCXPROJ) содержат код XML MSBuild, который выполняется при создании проекта с помощью интегрированной среды разработки.

MSBuild использует открытый и расширяемый формат файлов проекта на базе XML. Формат файла проекта MSBuild позволяет разработчикам описывать создаваемые элементы, а также способы их построения для разных операционных систем и конфигураций.

Кроме того, формат файла проекта позволяет разработчикам создавать многократно используемые правила сборки, которые можно разложить на отдельные файлы, чтобы сборки могли выполняться единообразно в различных проектах в составе соответствующего продукта.

## Просмотр компилятора

<figure><img src="https://4112636200-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FKMqUSFKgvT06FCJhm51b%2Fuploads%2Fgit-blob-ca056be223fe815b55ac6d477b326b994e679ea4%2Fmsbuild1.png?alt=media" alt=""><figcaption></figcaption></figure>

## Include и Library директории

<figure><img src="https://4112636200-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FKMqUSFKgvT06FCJhm51b%2Fuploads%2Fgit-blob-2d36e9552dc0af30c942cbc7493bbd7fc3254a5c%2Fmsbuild2.png?alt=media" alt=""><figcaption></figcaption></figure>

## Отключение SDL checks

<figure><img src="https://4112636200-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FKMqUSFKgvT06FCJhm51b%2Fuploads%2Fgit-blob-dd870b05073a6874af71d513255128351d46b8ac%2Fmsbuild3.png?alt=media" alt=""><figcaption></figcaption></figure>

## Ключ оптимизации компилятора

<figure><img src="https://4112636200-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FKMqUSFKgvT06FCJhm51b%2Fuploads%2Fgit-blob-c75b00a656b32bead74cfa25d87b4ea8305022f6%2Fmsbuild4.png?alt=media" alt=""><figcaption></figcaption></figure>

## Ключи препроцессора (-D)

<figure><img src="https://4112636200-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FKMqUSFKgvT06FCJhm51b%2Fuploads%2Fgit-blob-6c646d701a9682824d7ff6dee8be7a8b80c39fda%2Fmsbuild5.png?alt=media" alt=""><figcaption></figcaption></figure>

## Получаемая строка компиляции

<figure><img src="https://4112636200-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FKMqUSFKgvT06FCJhm51b%2Fuploads%2Fgit-blob-b4b8bd7fdc8fa43658e3cbd17ebfe19e9385f817%2Fmsbuild6.png?alt=media" alt=""><figcaption></figcaption></figure>

## Library directory

<figure><img src="https://4112636200-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FKMqUSFKgvT06FCJhm51b%2Fuploads%2Fgit-blob-c77a0633a39469868dc9db80c0318fecfada848a%2Fmsbuild7.png?alt=media" alt=""><figcaption></figcaption></figure>

## Указание .lib файлов

<figure><img src="https://4112636200-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FKMqUSFKgvT06FCJhm51b%2Fuploads%2Fgit-blob-df4ea5d445cff1e80c17b0857e36e1794c9e6986%2Fmsbuild8.png?alt=media" alt=""><figcaption></figcaption></figure>

## Получаемая строка линковки

<figure><img src="https://4112636200-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FKMqUSFKgvT06FCJhm51b%2Fuploads%2Fgit-blob-9c1b126af2dfe560a08e6a2affaf35bb280a8fcd%2Fmsbuild9.png?alt=media" alt=""><figcaption></figcaption></figure>

## Создание build events

<figure><img src="https://4112636200-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FKMqUSFKgvT06FCJhm51b%2Fuploads%2Fgit-blob-45af0b981d35de8f0739071e8341de18fa0fd77e%2Fmsbuild10.png?alt=media" alt=""><figcaption></figcaption></figure>
