在从SHA1升级到SHA256签名认证时发现.NET 4.5与.NET 4.0签署问题后,我决定重新实现ClickOnce建立过程遵循更标准的方法,这样我就可以使用VS2013更新3. 但是它似乎没有效果。我知道清单正在构建中,并且正常工作,因为它可以在运行.NET 4.5的任何机器上正常安装,但是.NET 4.0应用程序仍然失败。将Sha1的ClickOnce证书迁移到SHA256并在.NET 4.0客户端机器上运行
我使用CruiseControl.NET来管理我们的构建 要运行构建我使用这两个任务之一,但得到相同的结果。一。应用文件,该文件适用于.NET 4.5,但不是4.0的文章 中提到例如错误:
`<devenv>
<solutionfile>$(SolutionFile)</solutionfile>
<configuration>$(Config)</configuration>
<buildtype>Build</buildtype>
<executable>C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\devenv.com</executable>
<version>VS2013</version>
</devenv>`
或者用的MSBuild:
<msbuild>
<executable>C:\Program Files (x86)\MSBuild\12.0\Bin\MSBuild.exe</executable>
<workingDirectory>$(WorkingDirectory)</workingDirectory>
<projectFile>$(SolutionPath)</projectFile>
<buildArgs>
/p:Configuration=$(Config) /p:BuildFolder="$(BuildFolder)"
</buildArgs>
<targets>clean;publish</targets>
</msbuild>
我试过设置toolsversion在msbuild参数,以及其他一些方法,但似乎没有任何工作,并强迫我的最终用户卸载并重新安装,我试图避免。
过去两周,我一直与ClickOnce一起努力尝试和防止迁移到新证书的任何问题,但我似乎无法得到这最后一块工作正确。任何指导都将不胜感激。