Pre和Post Build事件参数

11
在Visual Studio中,有人能否指向一个可用的预构建和后构建事件参数列表?例如 $(TargetDir) 等。
4个回答

10
这个链接提供了完整和更新的列表。然而,如果它失效了,这个答案也将会失效。
目前,对于VS 2015,我们有: $(ConfigurationName)
当前项目配置的名称,例如“Debug | Any CPU”。 $(OutDir)
输出文件目录的路径,相对于项目目录。它解析为“输出目录”属性的值。它包括尾随的反斜杠“\”。 $(DevEnvDir)
Visual Studio 2005的安装目录(定义了驱动器和路径);包括尾随的反斜杠“\”。 $(PlatformName)
当前目标平台的名称。例如,“AnyCPU”。 $(ProjectDir)
项目所在的目录(定义了驱动器和路径);包括尾随的反斜杠“\”。 $(ProjectPath)
项目的绝对路径名(定义了驱动器、路径、基本名称和文件扩展名)。 $(ProjectName)
项目的基本名称。 $(ProjectFileName)
项目的文件名(定义了基本名称和文件扩展名)。 $(ProjectExt)
项目的文件扩展名。它包括文件扩展名前面的“。”。 $(SolutionDir)
解决方案所在的目录(定义了驱动器和路径);包括尾随的反斜杠“\”。 $(SolutionPath)
解决方案的绝对路径名(定义了驱动器、路径、基本名称和文件扩展名)。 $(SolutionName)
解决方案的基本名称。 $(SolutionFileName)
解决方案的文件名(定义了基本名称和文件扩展名)。 $(SolutionExt)
解决方案的文件扩展名。它包括文件扩展名前面的“。”。 $(TargetDir)
生成主输出文件的目录(定义了驱动器和路径)。它包括尾随的反斜杠“\”。 $(TargetPath)
生成主输出文件的绝对路径名(定义了驱动器、路径、基本名称和文件扩展名)。 $(TargetName)
生成主输出文件的基本名称。

$(TargetFileName)
构建的主输出文件的文件名(包括基本名称和文件扩展名)。

$(TargetExt)
构建的主输出文件的文件扩展名,包括文件扩展名前面的'.'。



2
以下是关于构建事件参数的最新列表,包括常见的构建命令和属性的宏。2018年Visual Studio 2015链接:https://msdn.microsoft.com/en-us/library/c02as0cs.aspx $(RemoteMachine) 设置为调试属性页上“远程机器”属性的值。有关更多信息,请参阅更改C/C++调试配置的项目设置$(Configuration) 当前项目配置的名称,例如“Debug”。 $(Platform) 当前项目平台的名称,例如“Win32”。 $(ParentName) (已弃用)包含此项目项的项目项的名称。这将是父文件夹名称或项目名称。 $(RootNameSpace) 包含应用程序的命名空间(如果有)。 $(IntDir) 中间文件指定的目录路径。如果这是相对路径,则中间文件将附加到项目目录中的此路径。此路径应该有一个尾随斜杠。这将解析为“Intermediate Directory”属性的值。不要使用$(OutDir)定义此属性。 $(OutDir) 输出文件目录的路径。如果这是相对路径,则输出文件将附加到项目目录中的此路径。此路径应该有一个尾随斜杠。这将解析为“Output Directory”属性的值。不要使用$(IntDir)定义此属性。 $(DevEnvDir) Visual Studio的安装目录(定义为驱动器+路径),包括尾随反斜杠“\”。 $(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 的目录。

此属性包含目标 Visual Studio 的版本,可能与主机 Visual Studio 不同。例如,在使用 $(PlatformToolset) = v110 构建时,$(VSInstallDir) 包含到 Visual Studio 2012 安装的路径。

$(VCInstallDir)

您安装Visual C++的目录。

此属性包含所针对的Visual C++版本,可能与主机Visual Studio不同。例如,当使用 $(PlatformToolset) = v140 构建时,$(VCInstallDir) 包含 Visual C++ 2015 安装路径。

$(FrameworkDir)

.NET Framework 安装目录。

$(FrameworkVersion)

Visual Studio 使用的 .NET Framework 版本。结合 $(FrameworkDir),可得到 Visual Studio 使用的 .NET Framework 的完整路径。

$(FrameworkSDKDir)

.NET Framework 安装目录。.NET Framework 可以作为 Visual Studio 的一部分或单独安装。

$(WebDeployPath)

项目输出文件所在位置相对于 Web 部署根目录的相对路径。 返回与 RelativePath 相同的值。

$(WebDeployRoot)

Web 部署根目录的绝对路径。例如,c:\inetpub\wwwroot。

$(SafeParentName)

(已弃用)有效名称格式下的直接父级名称。例如,一个窗体是 .resx 文件的父级。

$(SafeInputName)

(已弃用)文件名称作为有效类名,不包括文件扩展名。

$(SafeRootNamespace)

(已弃用)项目向导将添加代码的命名空间名称。此命名空间名称仅包含在有效 C++ 标识符中允许的字符。

$(FxCopDir)

fxcop.cmd 文件的路径。fxcop.cmd 文件并未安装在所有 Visual C++ 版本中。


0

所有参数都在中列出。

  1. 转到项目 -> 属性 -> 构建事件 -> 预构建事件 -> 命令行。
  2. 编辑命令行。
  3. 单击显示的对话框中的按钮。 所有参数都在此处列出。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接