相关疑难解决方法(0)

使用Visual Studio 2012时,SignTool.exe或"Windows Kits"目录的路径

使用Visual Studio 2012时,如何获得SignTool.exe的路径?

在Visual Studio 2010中,您可以使用

<Exec Command="&quot;$(FrameworkSDKDir)bin\signtool.exe&quot; sign /p ... />
Run Code Online (Sandbox Code Playgroud)

哪里$(FrameworkSDKDir)

"c:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\"
Run Code Online (Sandbox Code Playgroud)

但在Visual Studio 2012中,$(FrameworkSDKDir)

 "C:\Program Files (x86)\Microsoft SDKs\Windows\v8.0A\bin\"
Run Code Online (Sandbox Code Playgroud)

和SignTool在

 "c:\Program Files (x86)\Windows Kits\8.0\bin\x64\"
Run Code Online (Sandbox Code Playgroud)

有越来越路径不是硬编码等这个目录的方式(我试过FrameworkSDKDirWindowsSDKDir,但都指向v8.0A目录).

(我知道SignFile MSBuild任务,但我不能使用它,因为它不接受证书密码.)

msbuild signtool visual-studio-2012

41
推荐指数
5
解决办法
4万
查看次数

输出MSBuild变量时出现问题

我正在尝试将变量从一个目标输出到启动它的父目标.例如,

目标1只是调用文件2中的任务,并且应该能够使用其中的变量集.但是,我似乎无法让它工作(也许错误的语法?).目标1看起来像这样:

<Target Name="RetrieveParameter">
    <MSBuild Projects="$(MSBuildProjectFile)" Targets="ObtainOutput" />
    <Message Text="Output = $(OutputVar)" />
</Target>
Run Code Online (Sandbox Code Playgroud)

目标2是它读取文本文件的值并将其设置为属性并将变量"OutputVar"设置为匹配的位置.这应该被返回给父母.

<Target Name="ObtainOutput" Outputs="$(OutputVar)">
    <ReadLinesFromFile File="output.txt">
        <Output TaskParameter="Lines"
                PropertyName="OutputVar" />
    </ReadLinesFromFile>
</Target>
Run Code Online (Sandbox Code Playgroud)

我对MSBuild任务很陌生,所以它很可能是显而易见的.我想要做的就是在一个任务中设置一个变量,然后在调用它的父任务中使用它.

msbuild msbuild-task

3
推荐指数
1
解决办法
1436
查看次数