方法 : プロジェクト ファイルの名前または場所を参照するHow to: Reference the Name or Location of the Project File

独自のプロパティを作成することなく、プロジェクト ファイル自体のプロジェクトの名前または場所を使用できます。You can use the name or location of the project in the project file itself without having to create your own property. MSBuildMSBuild は、プロジェクトのファイル名とプロジェクトに関連するその他のプロパティを参照する、予約済みのプロパティを提供します。 provides reserved properties that reference the project file name and other properties related to the project. 予約済みのプロパティの詳細については、「MSBuild の予約済みおよび既知のプロパティ」を参照してください。For more information on reserved properties, see MSBuild Reserved and Well-Known Properties.

MSBuildProjectName プロパティの使用Using the MSBuildProjectName Property

MSBuildMSBuild は、毎回定義することなくプロジェクト ファイルで使用できる、いくつかの予約済みプロパティを提供します。 provides some reserved properties that you can use in your project files without defining them each time. たとえば、予約済みプロパティ MSBuildProjectName はプロジェクト ファイル名への参照を提供します。For example, the reserved property MSBuildProjectName provides a reference to the project file name.

MSBuildProjectName プロパティを使用するにはTo use the MSBuildProjectName Property

  • 他のすべてのプロパティの場合と同様に、$() 表記でプロジェクト ファイルのプロパティを参照します。Reference the property in the project file with the $() notation, just as you would with any property. 例:For example:

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

    予約済みのプロパティを使用する利点は、プロジェクト ファイル名への変更がすべて自動的に組み込まれることです。An advantage of using a reserved property is that any changes to the project file name are incorporated automatically. 次回プロジェクトをビルドするとき、出力ファイルに新しい名前が付けられ、追加の操作は必要ありません。The next time that you build the project, the output file will have the new name with no further action required on your part.

注意

予約済みのプロパティは、プロジェクト ファイルで再定義できません。Reserved properties cannot be redefined in the project file.

Example

次の例では、プロジェクト ファイルは出力の名前を指定する予約済みのプロパティとして、プロジェクト名を参照します。The following example project file references the project name as a reserved property to specify the name for the output.

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

参照See Also

MSBuildMSBuild
MSBuild の予約済みおよび既知のプロパティMSBuild Reserved and Well-Known Properties