可以在项目的**“属性页”**对话框中任何接受字符串的位置使用这些宏。这些宏不区分大小写。
若要显示当前可用宏,请在某个属性名称的右侧列中单击下拉箭头。如果**“编辑”可用,请单击此项,然后在编辑对话框中单击“宏”。有关更多信息,请参见属性页 (C++) 的Specifying User-Defined Values**一节。
标记为“已否决”的宏不再使用,或已由等效的项元数据宏(%(名称))所替代。标记为“已否决;已迁移”的宏也已弃用。此外,如果项目包含从 Visual Studio 2008 中迁移过来的宏,则 Visual Studio 会将该宏转换为等效的 Visual Studio 2010 宏。
宏  | 
说明  | 
|---|---|
$(RemoteMachine)  | 
在“调试”属性页上设置为 Remote Machine 属性的值。有关更多信息,请参见更改用于 C/C++ 调试配置的项目设置。  | 
$(Configuration)  | 
当前项目配置的名称(例如“Debug”)。  | 
$(Platform)  | 
当前项目平台的名称(例如“Win32”)。  | 
$(ParentName)  | 
(已否决。)包含此项目项的项的名称。该名称将是父文件夹名称或项目名称。  | 
$(RootNameSpace)  | 
包含应用程序的命名空间(如果有)。  | 
$(IntDir)  | 
为中间文件指定的相对于项目目录的目录路径。此路径应具有尾部斜杠。这解析为 Intermediate Directory 属性的值。  | 
$(OutDir)  | 
输出文件目录的路径,相对于项目目录。此路径应具有尾部斜杠。这解析为 Output Directory 属性的值。  | 
$(DevEnvDir)  | 
Visual Studio 2010 的安装目录(定义为驱动器 + 路径);包括尾部反斜杠“\”。  | 
$(InputDir)  | 
(已否决;已迁移。)输入文件的目录(定义形式:驱动器 + 路径);包括尾部的反斜杠“\”。如果项目为输入,则此宏等效于 $(ProjectDir)。  | 
$(InputPath)  | 
(已否决;已迁移。)输入文件的绝对路径名(定义形式:驱动器 + 路径 + 基本名称 + 文件扩展名)。如果项目为输入,则此宏等效于 $(ProjectPath)。  | 
$(InputName)  | 
(已否决;已迁移。)输入文件的基本名称。如果项目为输入,则此宏等效于 $(ProjectName)。  | 
$(InputFileName)  | 
(已否决;已迁移。)输入文件的文件名(定义为基本名称 + 文件扩展名)。如果项目为输入,则此宏等效于 $(ProjectFileName)。  | 
$(InputExt)  | 
(已否决;已迁移。)输入文件的文件扩展名。它在文件扩展名的前面包括“.”。如果项目为输入,则此宏等效于 $(ProjectExt)。  | 
$(ProjectDir)  | 
项目的目录(定义形式:驱动器 + 路径);包括尾部的反斜杠“\”。  | 
$(ProjectPath)  | 
项目的绝对路径名(定义形式:驱动器 + 路径 + 基本名称 + 文件扩展名)。  | 
$(ProjectName)  | 
项目的基名称。  | 
$(ProjectFileName)  | 
项目的文件名(定义为基本名称 + 文件扩展名)。  | 
$(ProjectExt)  | 
项目的文件扩展名。它在文件扩展名的前面包括“.”。  | 
$(SolutionDir)  | 
解决方案的目录(定义形式:驱动器 + 路径);包括尾部的反斜杠“\”。  | 
$(SolutionPath)  | 
解决方案的绝对路径名(定义形式:驱动器 + 路径 + 基本名称 + 文件扩展名)。  | 
$(SolutionName)  | 
解决方案的基名称。  | 
$(SolutionFileName)  | 
解决方案的文件名(定义为基本名称 + 文件扩展名)。  | 
$(SolutionExt)  | 
解决方案的文件扩展名。它在文件扩展名的前面包括“.”。  | 
$(TargetDir)  | 
生成的主输出文件的目录(定义形式:驱动器 + 路径);包括尾部的反斜杠“\”。  | 
$(TargetPath)  | 
生成的主输出文件的绝对路径名(定义形式:驱动器 + 路径 + 基本名称 + 文件扩展名)。  | 
$(TargetName)  | 
生成的主输出文件的基本名称。  | 
$(TargetFileName)  | 
生成的主输出文件的文件名(定义为基本名称 + 文件扩展名)。  | 
$(TargetExt)  | 
生成的主输出文件的文件扩展名。它在文件扩展名的前面包括“.”。  | 
$(VSInstallDir)  | 
安装 Visual Studio 2010 的目录。 此属性包含目标 Visual Studio 的版本,该版本可能与宿主 Visual Studio 不同。例如,在使用 $(PlatformToolset) = v90 进行生成时,$(VSInstallDir) 包含 Visual Studio 2008 安装位置的路径。  | 
$(VCInstallDir)  | 
安装 Visual C++ 2010 的目录。 此属性包含目标 Visual C++ 的版本,该版本可能与宿主 Visual Studio 不同。例如,在使用 $(PlatformToolset) = v90 进行生成时,$(VCInstallDir) 包含 Visual C++ 2008 安装位置的路径。  | 
$(FrameworkDir)  | 
安装 .NET Framework 的目录。  | 
$(FrameworkVersion)  | 
Visual Studio 使用的 .NET Framework 版本。与 $(FrameworkDir) 相结合,就是 Visual Studio 使用的 .NET Framework 版本的完整路径。  | 
$(FrameworkSDKDir)  | 
安装 .NET Framework 的目录。.NET Framework 可能已作为 Visual Studio 2010 的一部分安装,也可能单独安装。  | 
$(WebDeployPath)  | 
从 Web 部署根到项目输出所属于的位置的相对路径。返回与 RelativePath 相同的值。  | 
$(WebDeployRoot)  | 
指向 <localhost> 位置的绝对路径。例如,c:\inetpub\wwwroot。  | 
$(SafeParentName)  | 
(已否决。)有效名称格式的直接父级的名称。例如,窗体是 .resx 文件的父级。  | 
$(SafeInputName)  | 
(已否决。)作为有效类名的文件的名称,但不包括文件扩展名。  | 
$(SafeRootNamespace)  | 
(已否决。)项目向导将在其中添加代码的命名空间名称。此命名空间名称将只包含在有效的 C++ 标识符中允许的字符。  | 
$(FxCopDir)  | 
fxcop.cmd 文件的路径。fxcop.cmd 文件不和所有的 Visual C++ 版本一起安装。  |