Nat*_*ngs 12 visual-studio-2013 visual-studio-2015
在Visual Studio 2013(或2015)中,我有一个特定的项目,在后期构建事件中,我正在尝试将$(TargetDir)传递给批处理文件.
问题是,除了从"解决方案"开始的宏之外,所有宏都是空的.此外,所有宏都在"编辑生成后事件命令行"对话框中正确显示.
例
echo ConfigurationName is "$(ConfigurationName)"
Run Code Online (Sandbox Code Playgroud)
结果是
Configuration name is ""
Run Code Online (Sandbox Code Playgroud)
Man*_*uel 19
我有同样的问题.根据https://social.msdn.microsoft.com/Forums/vstudio/en-US/179716e8-89eb-40ff-ba13-339e2d25d1c8/outdir-and-targetpath-macros-are-empty?forum=msbuild,你有删除csproj文件中的ProperyGroupd,然后再次在visual studio中添加构建事件.

再次添加后,它将位于csproj文件的末尾,并且宏应该可以正常工作.
将项目文件从旧的 .NET Framework 格式迁移到 SDK 样式时遇到同样的问题。
看来 PostBuildEvent 的结构发生了变化,并且没有被“升级助手”工具转换。
这是之前的命令:
<PropertyGroup>
<PostBuildEvent>echo ProjectDir: $(ProjectDir)</PostBuildEvent>
</PropertyGroup>
Run Code Online (Sandbox Code Playgroud)
这是新版本:
<Target Name="PostBuild" AfterTargets="PostBuildEvent">
<Exec Command="echo ProjectDir: $(ProjectDir)" />
</Target>
Run Code Online (Sandbox Code Playgroud)
要进行迁移:打开代码文件(右键单击项目,“属性”)。然后剪切构建后片段并保存文件。再次粘贴该代码片段 - 现在它应该具有新的格式。
| 归档时间: |
|
| 查看次数: |
2398 次 |
| 最近记录: |