如何在.NET项目中将rc.exe与MSBuild一起使用

时间:2017-11-17 13:25:08

标签: .net msbuild

在.NET应用程序的MSBuild项目文件中,我一直在使用rc.exe,并使用Exec任务调用它,我从{{1}检索了rc.exe的路径}。

这适用于Visual Studio 2015,但是对于VS2017(未安装VS2015),WindowsSDK80Path指向不存在的目录。不幸的是,我没有找到一种方法来检索新的安装路径,这在我的机器上恰好是WindowsSDK80Path

我不知道如何使用C:\Program Files (x86)\Windows Kits\10任务,我不知道它是否正确使用,因为the documentation says,“特定于Visual C ++的任务”。

如何使用rc.exe以便它可以与VS2015和VS2017一起使用,如果可能的话,还可以使用下一版本的Visual Studio?

(请注意RC无法检索合适的路径。)

2 个答案:

答案 0 :(得分:0)

RC任务在我的机器上的C:\ Program Files(x86)\ MSBuild \ Microsoft.Cpp \ v4.0 \ v140中的Microsoft.CppCommon.targets中定义。您应该能够在项目中导入该目标文件,或者找到并将其复制(经过一些修改)到您的项目中。

编辑...

应该是导入该任务的安全方式,并且允许您不使用物理路径。

答案 1 :(得分:0)

我想出了这个:Exec任务调用PowerShell脚本,该脚本在HKLM\SOFTWARE\Wow6432Node\Microsoft\Microsoft SDKs\Windows的注册表中查找具有最大版本号的SDK,检索安装路径,然后从该路径是x86目录下面遇到的第一个rc.exe

有点难看,但它确实有效。