MSBuild 保留属性

MSBuild 提供了一组保留的属性,这些属性存储有关项目文件和 MSBuild 二进制文件的信息。 这些属性计算与其他 MSBuild 属性都相同。 例如,要使用 MSBuildProjectFile 属性,应键入下面的内容:

$(MSBuildProjectFile)

保留属性

下表描述 MSBuild 保留属性。

属性

描述

MSBuildBinPath

如当前使用查找 MSBuild 二进制文件夹的绝对路径 (,C:\Windows\Microsoft.Net\Framework\versionNumber\)。 如果您必须引用 MSBuild 目录中的文件,此属性将非常有用。

MSBuildExtensionsPath

路径 MSBuild 子文件夹在 \program files\ 或 \program files (x86)\ 文件夹,根据当前窗口的位数。 例如,对于 32 位 windows 在 64 位计算机,路径指向 \Program Files (x86)\ 文件夹。 为在 64 位计算机上的 64 位 windows,路径指向 \Program Files\ 文件夹。 另请参见 MSBuildExtensionsPath32MSBuildExtensionsPath64

此位置用于存放自定义目标文件。 例如,使用下面的 XML 代码,则目标文件在项目文件中安装在 \program files\MSBuild\MyFiles\Northwind.targets 然后导入:

<Import Project="$(MSBuildExtensionsPath)\MyFiles\Northwind.targets"/>

说明说明
可以设置环境变量 MSBUILDLEGACYEXTENSIONSPATH 到一个非 null 值来 MSBuildExtensionsPath 行为在早期版本的。

MSBuildExtensionsPath32

路径 MSBuild 子文件夹在 \Program Files\ 或 \Program Files (x86)\ 文件夹。 此路径始终指向 32 位 \Program Files\ 文件夹在 32 位计算机和 \Program Files (x86)\ 在 64 位计算机。 另请参见 MSBuildExtensionsPathMSBuildExtensionsPath64

MSBuildExtensionsPath64

MSBuild 子文件夹的路径在 \Program Files\ 文件夹下的。 到 64 位计算机,此路径始终指向 \Program Files\ 文件夹。 对于 32 位计算机,此路径为空。 另请参见 MSBuildExtensionsPathMSBuildExtensionsPath32

MSBuildLastTaskResult

true,如果前面的任务已完成得不发生任何错误 (即使有警告),或者 false,如果前面的任务具有错误。

说明说明
通常,那么,当错误在任务时,将发生此错误。在该项目生成的最后。因此,此属性的值不是 false,但在这些情况下:

MSBuildNodeCount

最大数目的并发进程使用,在编译时。 这是用于 /maxcpucount 在命令行处指定的值。 如果指定了 /maxcpucount,无需指定值,则 MSBuildNodeCount 在计算机指定处理器的数目。 有关更多信息,请参见MSBuild 命令行参考用 MSBuild 并行生成多个项目

MSBuildProgramFiles32

32 位程序文件夹的位置;例如,C:\Program Files (x86)。

MSBuildProjectDefaultTargets

Project 元素的 DefaultTargets 特性中指定的目标的完整列表。 例如,下面的 Project 元素将具有 A;B;C的一个 MSBuildDefaultTargets 属性值:

<Project DefaultTargets="A;B;C" >

MSBuildProjectDirectory

查找项目文件的目录的绝对路径;例如,C:\MyCompany\MyProduct\。

MSBuildProjectDirectoryNoRoot

MSBuildProjectDirectory 属性的值,但不包括根驱动程序。

MSBuildProjectExtension

项目文件的文件扩展名,包括小数点;例如,.proj。

MSBuildProjectFile

项目文件的完整文件名,包括文件扩展名;例如,MyApp.proj。

MSBuildProjectFullPath

项目文件的绝对路径和完整文件名,包括文件扩展名;例如,C:\MyCompany\MyProduct\MyApp.proj。

MSBuildProjectName

项目文件的文件名不带文件扩展名的;例如,MyApp。

MSBuildStartupDirectory

MSBuild 调用文件夹的绝对路径。 使用此属性,在项目节点构树可以在下生成所有特定点,而无需创建 dirs.proj 文件在每个内容。 相反,您有一项 (例如,c:\traversal.proj,如下所示:

<Project ...>
    <ItemGroup>
        <ProjectFiles  
           Include="$
           (MSBuildStartupDirectory)
           **\*.csproj"/>
    </ItemGroup>
    <Target Name="build">
        <MSBuild    
        Projects="@(ProjectFiles)"/>
    </Target>
</Project>

在任意点若要编译该节点构树,请键入:

msbuild c:\traversal.proj

MSBuildThisFile

MSBuildThisFileFullPath的文件名和文件扩展名部分。

MSBuildThisFileDirectory

MSBuildThisFileFullPath的内容的一部分。

MSBuildThisFileDirectoryNoRoot

MSBuildThisFileFullPath的内容的一部分,但不包括根驱动程序。

MSBuildThisFileExtension

MSBuildThisFileFullPath的文件扩展名部分。

MSBuildThisFileFullPath

包含目标运行项目或目标文件的绝对路径。

提示提示
MSBuildThisFileFullPath 属性启用相对路径的规范是相对于目标文件和不相对于原始项目文件的目标文件的。

MSBuildThisFileName

MSBuildThisFileFullPath的文件名部分,不带文件扩展名。

MSBuildToolsPath

MSBuildToolsVersion的值 MSBuild 版本的安装路径。

MSBuildToolsVersion

用于生成项目 MSBuild 工具集的版本。

说明说明
MSBuild 工具集包括任务、用于生成应用程序的目标和工具。工具包括编译器 csc.exe 和 vbc.exe 等。有关更多信息,请参见MSBuild 工具集 (ToolsVersion)标准和自定义工具集配置

请参见

概念

MSBuild 属性

其他资源

MSBuild 参考