在從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一起努力嘗試和防止遷移到新證書的任何問題,但我似乎無法得到這最後一塊工作正確。任何指導都將不勝感激。