Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/304.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Clickonce应用程序,如果从除我之外的任何系统发布,则代码签名证书被组策略阻止 环境: ClickOnce Winforms应用程序具有签名证书Symantec Class 3 SHA256代码签名CA 客户端计算机正在运行windows 7,用户处于不允许本地管理员访问的组策略下 对于我们的代码证书,有一个应用于该组的证书策略,该策略应允许任何具有该证书的应用程序使用本地管理员权限运行 由于安全原因,无法更改组策略 多达6名开发人员参与并发布此项目 Visual Studio 2013 症状:_C#_Clickonce_Code Signing_Group Policy - Fatal编程技术网

C# Clickonce应用程序,如果从除我之外的任何系统发布,则代码签名证书被组策略阻止 环境: ClickOnce Winforms应用程序具有签名证书Symantec Class 3 SHA256代码签名CA 客户端计算机正在运行windows 7,用户处于不允许本地管理员访问的组策略下 对于我们的代码证书,有一个应用于该组的证书策略,该策略应允许任何具有该证书的应用程序使用本地管理员权限运行 由于安全原因,无法更改组策略 多达6名开发人员参与并发布此项目 Visual Studio 2013 症状:

C# Clickonce应用程序,如果从除我之外的任何系统发布,则代码签名证书被组策略阻止 环境: ClickOnce Winforms应用程序具有签名证书Symantec Class 3 SHA256代码签名CA 客户端计算机正在运行windows 7,用户处于不允许本地管理员访问的组策略下 对于我们的代码证书,有一个应用于该组的证书策略,该策略应允许任何具有该证书的应用程序使用本地管理员权限运行 由于安全原因,无法更改组策略 多达6名开发人员参与并发布此项目 Visual Studio 2013 症状:,c#,clickonce,code-signing,group-policy,C#,Clickonce,Code Signing,Group Policy,当我从我的系统发布应用程序时,它能够自动更新并按预期运行 当任何其他开发人员发布时,它会自动更新,并且应用程序无法启动。转储包含以下错误: 此程序被组策略阻止。有关详细信息,请与系统管理员联系 如果我从我的机器重新发布,它将更新并按预期运行 签字: 以下步骤是我们将证书应用于应用程序的方式: 项目属性 签名选项卡 “从文件中选择”按钮 选择项目中包含的证书 输入证书密码 问题: 当证书以同样的方式应用时,为什么我们只能从一个开发人员的计算机更新ClickOnce应用程序,而不能从其他开发人员的计

当我从我的系统发布应用程序时,它能够自动更新并按预期运行

当任何其他开发人员发布时,它会自动更新,并且应用程序无法启动。转储包含以下错误:

此程序被组策略阻止。有关详细信息,请与系统管理员联系

如果我从我的机器重新发布,它将更新并按预期运行

签字: 以下步骤是我们将证书应用于应用程序的方式:

项目属性 签名选项卡 “从文件中选择”按钮 选择项目中包含的证书 输入证书密码 问题: 当证书以同样的方式应用时,为什么我们只能从一个开发人员的计算机更新ClickOnce应用程序,而不能从其他开发人员的计算机更新ClickOnce应用程序


除了禁用组策略之外,我们如何才能在多台计算机上成功发布此应用程序而不遇到相同的问题?

我不知道它不起作用的确切原因,但我想说的是,如果clickonce可以部署在第三方机器上,并且在同一台机器上,它使用的是从您的机器生成的clickonce,而不是从您的机器生成的clickonce使用从另一台开发人员机器生成的clickonce,您已经完成了最困难的部分

您需要追踪两台开发人员机器之间的差异。好的候选者是注册表或证书存储

所以对我来说,你有这些选择:

使用其他机器测试生成和部署,以查看它是否正常工作 检查clickonce的.csproj设置是否完全相同 尝试在本地存储中安装证书,然后使用 从商店中选择 检查证书链是否安装了正确的根证书,证书是否安装在正确的组中。。 比较两台dev机器上的性能可能很困难,但如果它们完全不同的话 将生成的clickonce文件与文件比较器进行比较,尤其是.manifest文件,我已经通过这种方式跟踪了错误
根据费边的回答,微软最近使SHA256证书向后兼容,因此它们将在旧版本的windows上工作。由于要发布到Windows 7计算机,因此可以检查服务器发布后参考上生成的应用程序文件: -算法=http://www.w3.org/2000/09/xmldsigsha1

如果它显示sha256,则在安装时Windows 7可能无法识别它


如果是这种情况,请尝试更新您的Visual Studio版本-这应该包含在最新更新中。

使用文本编辑器比较生成的clickonce文件,我们就找到了解决方案,一位同事不久将在此处发布此功能,以帮助其他有相同问题的人。此功能是在Visual Studio 2013更新3中特别引入的。这让我头痛了好几个星期,因为这一点,我才刚刚找到答案:如果可以的话,我会投很多票!