Compartir a través de


Cómo: Hacer referencia al nombre o ubicación del archivo de proyecto

Puede utilizar el nombre o la ubicación del proyecto en el archivo de proyecto sin tener que crear su propia propiedad. MSBuild proporciona propiedades reservadas que hacen referencia al nombre del archivo de proyecto y otras propiedades relacionadas con el proyecto. Para obtener más información sobre propiedades reservadas, vea Propiedades reservadas y conocidas de MSBuild.

Utilizar la propiedad MSBuildProjectName

MSBuild ofrece unas propiedades reservadas que se pueden utilizar en los archivos de proyecto sin tener que definirlas cada vez. Por ejemplo, la propiedad reservada MSBuildProjectName proporciona una referencia al nombre del archivo de proyecto.

Para utilizar la propiedad MSBuildProjectName

  • Haga referencia a la propiedad en el archivo de proyecto con la notación $(), como lo haría con cualquier propiedad. Por ejemplo:

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

Una ventaja de utilizar una propiedad reservada es que cualquier cambio que se realice en el nombre del archivo de proyecto se incorpora automáticamente. La próxima vez que se compile el proyecto, el archivo de salida tendrá el nuevo nombre sin necesidad de intervenir.

NotaNota

Las propiedades reservadas no se pueden volver a definir en el archivo de proyecto.

Ejemplo

En el ejemplo siguiente, el archivo de proyecto hace referencia al nombre del proyecto como una propiedad reservada que especifica el nombre para el resultado.

<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>

Vea también

Referencia

Propiedades reservadas y conocidas de MSBuild

Otros recursos

MSBuild