我为一个为 5 个用户做一些自定义事情的客户端编写了一个 Excel 插件。我用 VS2012 和 Excel 2010 的互操作程序集编写了它。我用 MS 一键发布器发布了加载项,压缩了内容,并将其发送给这 5 个用户。他们(似乎)只能随机安装加载项。一些用户成功了,而另一些用户则收到错误消息。更多信息:
- 永远不会提示未成功安装的用户信任安装。它使他们正确地看到错误消息。
- 我只用本地开发证书签署了代码。我没有使用威瑞信证书或类似的东西。我没想到它会做任何事情,因为他们的本地文件系统永远不允许它到达提示符。
- 首先,我制作了一个批处理文件来配置注册表的包含列表安全性。这什么也没做。
- 我无法在任何其他 PC 上复制该错误,无论它是否在我的本地网络上。
我的猜测是,他们的安全策略中有一些内容禁止访问这些一键式安装程序文件。有什么想法吗?
这是错误消息:
System.Security.SecurityException: Customized functionality in this application will not work because the certificate used to sign the deployment manifest for ThisAddin or its location is not trusted. Contact your administrator for further assistance.
at Microsoft.VisualStudio.Tools.Applications.Deployment.ClickOnceAddInTrustEvaluator.VerifyTrustPromptKeyInternal(ClickOnceTrustPromptKeyValue promptKeyValue, DeploymentSignatureInformation signatureInformation, String productName)
at Microsoft.VisualStudio.Tools.Applications.Deployment.ClickOnceAddInTrustEvaluator.VerifyTrustUsingPromptKey(Uri manifest, DeploymentSignatureInformation signatureInformation, String productName)
at Microsoft.VisualStudio.Tools.Applications.Deployment.ClickOnceAddInDeploymentManager.VerifySecurity(ActivationContext context, Uri manifest, AddInInstallationStatus installState)
at Microsoft.VisualStudio.Tools.Applications.Deployment.ClickOnceAddInDeploymentManager.InstallAddIn() The Zone of the assembly that failed was:MyComputer