Wil*_*len 4 .net clickonce manifest authenticode
我正在努力在.NET 4.5上部署ClickOnce应用程序构建,这是事实:
但是,无论我做什么,当我使用“立即发布”按钮实际发布ClickOnce应用程序时,所有文件都会被发布,但是当我下载“ Setup.exe”时,它总是说“ Unknown Publisher”。
关于我在做什么错的任何想法吗?我已经对此进行了数周的研究,并且已经阅读了足够的内容,以至于我在“正确”地进行了操作,但是我只是必须缺少一些小的复选框或设置,或者是某些东西。
任何帮助表示赞赏。
-工作组
据我所知,“ Unknown Publisher”取消了代码签名,而Visual Studio并未为其提供接口。哦,它确实具有签名接口,但仅用于清单签名和强名称程序集签名。这另一个问题也提到了三个签名。
要用您的组织名称替换“未知发布者”,您必须在.csproj或.vbproj文件中添加一些XML。在结束</Project>标记之前,您需要调用SignTool.exe,我已将其手动复制到解决方案的主Bin文件夹中(如果没有,则为Windows SDK的一部分)。这是我的样子:
<!-- This section is used for code-signing the application. This should not be confused with manifest signing or with strong-name assembly signing, which can both be done from the Visual Studio interface. -->
<Target Name="SignOutput" AfterTargets="CoreCompile">
<PropertyGroup>
<TimestampServerUrl>http://timestamp.verisign.com/scripts/timstamp.dll</TimestampServerUrl>
<ApplicationDescription>A.Franklin's Awesome App</ApplicationDescription>
<SigningCertificateCriteria>/sha1 0c0ff5e29404b7d78q2517f487da0b1a0912c4da</SigningCertificateCriteria>
</PropertyGroup>
<ItemGroup>
<SignableFiles Include="$(ProjectDir)obj\$(ConfigurationName)\$(TargetName)$(TargetExt)" />
</ItemGroup>
<Exec Command=""$(ProjectDir)..\Bin\SignTool" sign $(SigningCertificateCriteria) /d "$(ApplicationDescription)" /t "$(TimestampServerUrl)" "%(SignableFiles.Identity)"" />
</Target>
Run Code Online (Sandbox Code Playgroud)
要获取我已经安装在计算机上的证书的哈希码(上面的“ 0c0ff5 ...”),我
You could use SignTool.exe manually too, but for me this setup runs it transparently during each compile.
| 归档时间: |
|
| 查看次数: |
3032 次 |
| 最近记录: |