Практическое руководство. Использование ссылки на имя или расположение файла проекта

Обновлен: Ноябрь 2007

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

Использование свойства MSBuildProjectName

В MSBuild предоставляются некоторые зарезервированные свойства, которые можно использовать в файлах проекта, не определяя их каждый раз. Например, в зарезервированном свойстве MSBuildProjectName предоставляется ссылка на имя файла проекта.

Использование свойства MSBuildProjectName

  • Для указания ссылки в файле проекта используйте запись $(), как и для любого другого свойства. Например:

    <CSC Sources = "@(CSFile)" 
        OutputAssembly = "$(MSBuildProjectName).exe"/>
    </CSC>
    

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

ms171460.alert_note(ru-ru,VS.90).gifПримечание.

Зарезервированные свойства нельзя переопределить в файле проекта.

Пример

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

<Project xmlns="http://scheams.microsoft.com/developer/msbuild/2003" 
    DefaultTargets = "Compile">

    <!-- Specify the inputs -->
    <ItemGroup>
        <CSFile Include = "consolehwcs1.cs"/>
    </ItemGroup>
    <Target Name = "Compile">
        <!-- Run the Visual C# compilation using
        input files of type CSFile -->
        <CSC Sources = "@(CSFile)"
            OutputAssembly = "$(MSBuildProjectName).exe" >
            <!-- Set the OutputAssembly attribute of the CSC task
            to the name of the project -->
            <Output
                TaskParameter = "OutputAssembly"
                ItemName = "EXEFile" />
        </CSC>
        <!-- Log the file name of the output file -->
        <Message Text="The output file is @(EXEFile)"/>
    </Target>
</Project>

См. также

Основные понятия

MSBuild

Ссылки

Зарезервированные свойства MSBuild