use*_*808 13 c# deployment xml-signature visual-studio-2012
操作系统:安装了.NET 4.5的Visual Studio Pro 2012的Windows 7 64位.
我在Visual Studios中使用了Publish选项并确保我单击了Sign the clickOnce清单并签署了Assembly.它仍然无法在另一台计算机上运行,并且说我没有有效的XML签名.我已粘贴下面的错误消息.
我还读过:如何移动ClickOnce部署包,我是否必须签署ClickOnce清单?.VS2012 .NET 4.0 Clickonce VSTO CryptographicException:无法为提供的签名算法和其他几个算法创建SignatureDescription.
我需要能够在.NET 4.0上部署我的程序至少,我无法访问另一个版本的Visual Studios.提前致谢!
完成错误如下:
PLATFORM VERSION INFO Windows:5.1.2600.196608(Win32NT)公共语言运行时:2.0.50727.3603 System.Deployment.dll:2.0.50727.3053(netfxsp.050727-3000)mscorwks.dll:2.0.50727.3603(GDR.050727-3600)dfdll. DLL:2.0.50727.3053(netfxsp.050727-3000)dfshim.dll:4.0.31106.0(Main.031106-0000)
来源部署网址:file:/// C:/Documents%20and%20Settings/Administrator/Desktop/EatonWizard.application
错误摘要以下是错误的摘要,这些错误的详细信息将在后面的日志中列出.*激活C:\ Documents and Settings\Administrator\Desktop\EatonWizard.application导致异常.检测到以下失败消息:+来自file:/// C:/Documents%20and%20Settings/Administrator/Desktop/EatonWizard.application的异常读取清单:清单可能无效或无法打开文件.+ Manifest XML签名无效.无法为提供的签名算法创建+ SignatureDescription.
组件存储事务故障摘要未检测到事务错误.
警告此操作期间没有警告.
操作进度状态*[10/10/2012 2:05:02 PM]:已启动C:\ Documents and Settings\Administrator\Desktop\EatonWizard.application的激活.
错误详细信息在此操作期间检测到以下错误.*[10/10/2012 2:05:02 PM] System.Deployment.Application.InvalidDeploymentException(ManifestParse) - 来自file:/// C:/Documents%20and%20Settings/Administrator/Desktop/EatonWizard.application的异常读取清单:清单可能无效或无法打开文件. - 源:System.Deployment - 堆栈跟踪:在System.Deployment.Application.DownloadManager.DownloadDeploymentManifestDirectBypass的System.Deployment.Application.ManifestReader.FromDocument(String localPath,ManifestType manifestType,Uri sourceUri)中(SubscriptionStore子存储,Uri和sourceUri,TempFile和tempFile, System.Deployment.Application.ApplicationActivator上的System.Deployment.Application.DownloadManager.DownloadDeploymentManifestBypass(SubscriptionStore子存储,Uri&sourceUri,TempFile&tempFile,SubscriptionState和subState,IDownloadNotification通知,DownloadOptions选项)中的SubscriptionState&subState,IDownloadNotification通知,DownloadOptions选项,ServerInformation和serverInformation. System.Deployment.Application.ApplicationActivator.ActivateDeploymentWorker上的PerformDeploymentActivation(Uri activationUri,Boolean isShortcut,String textualSubId,String deploymentProviderUrlFromExtension,BrowserSettings browserSettings,String&errorPageUrl)bject state)---内部异常--- System.Deployment.Application.InvalidDeploymentException(SignatureValidation) - 清单XML签名无效. - 来源:System.Deployment - 堆栈跟踪:System.Deployment.Application.Manifest.AssemblyManifest.ValidateSignature(Stream s)at System.Deployment.Application.ManifestReader.FromDocument(String localPath,ManifestType manifestType,Uri sourceUri)--- Inner异常--- System.Security.Cryptography.CryptographicException - 无法为提供的签名算法创建SignatureDescription. - 来源:System.Security - 堆栈跟踪:位于System.Seeployment.Internal.CodeSigning的System.Security.Cryptography.Xml.SignedXml.CheckSignatureReturningKey(AsymmetricAlgorithm&signingKey)中的System.Security.Cryptography.Xml.SignedXml.CheckSignedInfo(AsymmetricAlgorithm键) .SignedCmiManifest.Verify(CmiManifestVerifyFlags verifyFlags)在System.Deployment.Application.Manifest.AssemblyManifest.ValidateSignature(Stream s)
COMPONENT STORE TRANSACTION DETAILS没有可用的交易信息.
Thi*_*ago 36
我今天遇到了同样的问题.这就是我解决的问题:
导致问题的原因是:我们使用vs2012和framework 4.5创建了一个clickonce项目.然后我们将目标框架更改为4.0(客户端要求).
问题是:Framework 4.5使用SHA-256算法进行签名,4.0使用SHA-1.当我们将目标框架更改为4.0并且vs2012没有更改算法时.
解决方案:手动更改算法,生成新证书.
转到项目属性 - >签名
您将看到"签名算法"中使用的算法.您可以创建一个新的测试证书,然后您会注意到它变为'sha1RSA'
| 归档时间: |
|
| 查看次数: |
14879 次 |
| 最近记录: |