5 人のユーザー向けにいくつかのカスタム処理を行うクライアント用の Excel アドインを作成しました。VS2012 と Excel 2010 の相互運用アセンブリを使用して作成しました。アドインを MS ワンクリック パブリッシャーで公開し、コンテンツを圧縮して、これら 5 人のユーザーに送信しました。彼らは (一見) アドインを無作為にインストールすることしかできません。成功したユーザーもいれば、エラー メッセージが表示されるユーザーもいます。いくつかの詳細情報:
- 正常にインストールされていないユーザーは、インストールを信頼するように求められることはありません。エラーメッセージが表示されます。
- ローカルの開発証明書だけでコードに署名しました。Verisign 証明書などは使用しませんでした。彼らのローカルファイルシステムがプロンプトに到達することを決して許可していないので、私はそれが何もしないとは思いませんでした。
- 最初に、包含リスト セキュリティ用のレジストリを構成するためのバッチ ファイルを作成しました。これは何もしませんでした。
- ローカル ネットワーク上にあるかどうかに関係なく、他の 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