强名称签名对此程序集stdole.dll无效

时间:2016-04-13 06:49:53

标签: c# wpf clickonce stdole

我刚开始在ClickOnce应用程序中收到以下错误。安装并运行相同的应用程序时,看似成功安装后,我收到一条错误消息:

  

应用验证未成功

错误详情我可以看到问题:

  

强名称签名对此程序集stdole.dll无效。

当我点击详细信息时,我得到了

  

错误详细信息在此操作期间检测到以下错误。   * [04/13/2016 11:33:22 AM] System.Deployment.Application.InvalidDeploymentException   (SignatureValidation)          - 强名称签名对此程序集stdole.dll无效。          - 来源:System.Deployment          - 堆栈跟踪:在System.Deployment.Application.ComponentVerifier.VerifyStrongNameAssembly(String   filePath,AssemblyManifest assemblyManifest)at   System.Deployment.Application.ComponentVerifier.VerifyComponents()             在   System.Deployment.Application.DownloadManager.DownloadDependencies(SubscriptionState   subState,AssemblyManifest deployManifest,AssemblyManifest   appManifest,Uri sourceUriBase,String targetDirectory,String group,   IDownloadNotification通知,下载选项选项)   System.Deployment.Application.ApplicationActivator.DownloadApplication(SubscriptionState   subState,ActivationDescription actDesc,Int64 transactionId,   TempDirectory&安培; downloadTemp)at   System.Deployment.Application.ApplicationActivator.InstallApplication(SubscriptionState&安培;   subState,ActivationDescription actDesc)at   System.Deployment.Application.ApplicationActivator.PerformDeploymentActivation(URI   activationUri,Boolean isShortcut,String textualSubId,String   deploymentProviderUrlFromExtension,BrowserSettings browserSettings,   字符串和放大器; errorPageUrl)at   System.Deployment.Application.ApplicationActivator.ActivateDeploymentWorker(对象   状态)

2 个答案:

答案 0 :(得分:4)

嘿不确定您是否仍然没有发现问题,但请参阅此文章:Get ListView Visible items并根据您使用的Visual Studio版本应用它。

问题是ClickOnce应用程序正在尝试使用stdole dll的未签名版本,但您需要对其进行签名。

答案 1 :(得分:1)

这是一个非常隐蔽的问题,会一次又一次地偷偷摸摸你(开箱,制造机器等)。无论出于何种原因,Microsoft在Visual Studio程序集搜索路径中保留旧程序集的未签名版本。

查看Why is Visual Studio 2015 adding stdole.dll and Microsoft.AnalysisServices.AdomdClient.dll to my project?了解更多详细信息以及一些可能有助于避免此问题的答案。