问题
I am running windows form application as ClickOnce Deployment. When i debugg the solution i am not getting any error. it's working fine. But, when i publish the application using click once deployment and run the application from folder, i am getting the following error log. Can anyone help me out what exactly the problem is?
The Dll's are in assemblies folder in one of the project.And they are used in other project as reference.
PLATFORM VERSION INFO
Windows : 6.1.7601.65536 (Win32NT)
Common Language Runtime : 4.0.30319.18063
System.Deployment.dll : 4.0.30319.17929 built by: FX45RTMREL
clr.dll : 4.0.30319.18063 built by: FX45RTMGDR
dfdll.dll : 4.0.30319.17929 built by: FX45RTMREL
dfshim.dll : 4.0.41209.0 (Main.041209-0000)
SOURCES
Deployment url : WorkPC/FaxPromptTool/xrm.OutboundFax.application
Server : Microsoft-IIS/7.5
X-Powered-By : ASP.NET
Application url : WorkPC/FaxPromptTool/Application%20Files/xrm.OutboundFax_1_0_0_5/xrm.OutboundFax.exe.manifest
Server : Microsoft-IIS/7.5
X-Powered-By : ASP.NET
IDENTITIES
Deployment Identity : xrm.OutboundFax.application, Version=1.0.0.5, Culture=neutral, PublicKeyToken=f841479c30c8d3cb, processorArchitecture=x86
Application Identity : xrm.OutboundFax.exe, Version=1.0.0.5, Culture=neutral, PublicKeyToken=f841479c30c8d3cb, processorArchitecture=x86, type=win32
APPLICATION SUMMARY
* Online only application.
* Trust url parameter is set.
ERROR SUMMARY
Below is a summary of the errors, details of these errors are listed later in the log.
* Activation of http://pc265075/FaxPromptTool/xrm.OutboundFax.application resulted in exception. Following failure messages were detected:
+ Strong name signature not valid for this assembly Microsoft.Practices.EnterpriseLibrary.Data.dll.
COMPONENT STORE TRANSACTION FAILURE SUMMARY
No transaction error was detected.
WARNINGS
There were no warnings during this operation.
OPERATION PROGRESS STATUS
* [09/23/14 8:53:12 PM] : Activation of http://pc265075/FaxPromptTool/xrm.OutboundFax.application has started.
* [09/23/14 8:53:12 PM] : Processing of deployment manifest has successfully completed.
* [09/23/14 8:53:12 PM] : Installation of the application has started.
* [09/23/14 8:53:12 PM] : Processing of application manifest has successfully completed.
* [09/23/14 8:53:16 PM] : Found compatible runtime version 4.0.30319.
* [09/23/14 8:53:16 PM] : Request of trust and detection of platform is complete.
ERROR DETAILS
Following errors were detected during this operation.
* [09/23/14 8:53:17 PM] System.Deployment.Application.InvalidDeploymentException (SignatureValidation)
- Strong name signature not valid for this assembly Microsoft.Practices.EnterpriseLibrary.Data.dll.
- Source: System.Deployment
- Stack trace:
at System.Deployment.Application.ComponentVerifier.VerifyStrongNameAssembly(String filePath, AssemblyManifest assemblyManifest)
at System.Deployment.Application.ComponentVerifier.StrongNameAssemblyComponent.Verify()
at System.Deployment.Application.ComponentVerifier.VerifyComponents()
at System.Deployment.Application.DownloadManager.DownloadDependencies(SubscriptionState subState, AssemblyManifest deployManifest, AssemblyManifest appManifest, Uri sourceUriBase, String targetDirectory, String group, IDownloadNotification notification, DownloadOptions options)
at 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, String& errorPageUrl)
at System.Deployment.Application.ApplicationActivator.ActivateDeploymentWorker(Object state)
COMPONENT STORE TRANSACTION DETAILS
No transaction information is available.
回答1:
I faced the same issue when I did click once deployment. The possible errors are the property settings are wrong. 1.Did u strong name this assembly?. After strong naming did you delete the old reference and add a new one ? If so that's wrong. We need not explicitly add the dll again. Once we build it ll get referred automatically. If you have removed the reference added explicitly then check the below condition, 1.a Go to project properties -> publish -> Application Files -> Check if there is any reference to this particular DLL other than GAC reference(by default this DLL would be reffered to DLL from GAC, when u explicitly add reference from your machine then the local references will also get added) -> If u find any such thing just exclude it build it again and trigger a new click once build -> the problem should be solved.
- And for the reference set CopyLocal property to true. References -> Select the corresponding DLL -> Set copyLocal property to true.
Thanks, Gayathri. chand.gayu@gmail.com
来源:https://stackoverflow.com/questions/26008772/strong-name-signature-not-valid-for-this-assembly-microsoft-practices-enterprise