Эти цели содержатся в файле с именем Microsoft.Common.targets
. Этот файл импортируется в ваши скрипты через другой импорт, Microsoft.CSharp.targets
(или аналогичный для других языков). Поэтому они всегда определяются, когда начинается сборка. В файлах вашего проекта вы можете переопределить эти цели, повторно объявив их после оператора <Import
для файла, упомянутого ранее. Если вы объявите их до <Import
, то ваши цели будут игнорироваться, потому что будут использоваться пустые в Microsoft.Common.targets
.
Подробнее о расширении процесса сборки см. Мою статью Внутри MSBuild или, что еще лучше, мою книгу Внутри Microsoft Build Engine !
В ответ на предыдущий комментарий эти цели являются частью процесса сборки, который создает ваши проекты. Они сохраняются в файлах MSBuild и не являются частью MSBuild или Visual Studio.