ClickOnce Application Error: Deployment and application do not have matching security zones

Bindas picture Bindas · Feb 10, 2012 · Viewed 34.7k times · Source

I am having trouble on ClickOnce Application with FireFox and Chrome in IE it works fine. the Detail Of exception is:

PLATFORM VERSION INFO
    Windows             : 6.1.7600.0 (Win32NT)
    Common Language Runtime     : 4.0.30319.239
    System.Deployment.dll       : 4.0.30319.1 (RTMRel.030319-0100)
    clr.dll             : 4.0.30319.239 (RTMGDR.030319-2300)
    dfdll.dll           : 4.0.30319.1 (RTMRel.030319-0100)
    dfshim.dll          : 4.0.31106.0 (Main.031106-0000)

SOURCES
    Deployment url          : file:///C:/Users/ibz/Downloads/MyApp.application

IDENTITIES
    Deployment Identity     : MyApp.application, Version=1.0.1.23, Culture=neutral, PublicKeyToken=0000000000000000, processorArchitecture=msil

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 C:\Users\ibz\Downloads\MyApp.application resulted in exception. Following failure messages were detected:
        + Deployment and application do not have matching security zones.

COMPONENT STORE TRANSACTION FAILURE SUMMARY
    No transaction error was detected.

WARNINGS
    * The manifest for this application does not have a signature. Signature validation will be ignored.

OPERATION PROGRESS STATUS
    * [2/10/2012 4:53:18 PM] : Activation of C:\Users\ibz\Downloads\MyApp.application has started.
    * [2/10/2012 4:53:18 PM] : Processing of deployment manifest has successfully completed.
    * [2/10/2012 4:53:18 PM] : Installation of the application has started.

ERROR DETAILS
    Following errors were detected during this operation.
    * [2/10/2012 4:53:18 PM] System.Deployment.Application.InvalidDeploymentException (Zone)
        - Deployment and application do not have matching security zones.
        - Source: System.Deployment
        - Stack trace:
            at System.Deployment.Application.DownloadManager.DownloadApplicationManifest(AssemblyManifest deploymentManifest, String targetDir, Uri deploymentUri, IDownloadNotification notification, DownloadOptions options, Uri& appSourceUri, String& appManifestPath)
            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.

Please Help Me out on this problem.

Answer

Michael picture Michael · Jun 11, 2013

Downloading file breaks relative link

The problem is that the error message should have been ExampleAppName.exe.manifest could not be found.

If you open the ExampleAppName.application file that was downloaded you can see it probably points to a path like Application Files\ExampleAppName.exe.manifest and that file does not exist locally.

It still works in IE because IE starts the installer WITHOUT downloading the file. Then the manifest file does in fact exist in a relative path to where the ExampleAppName.application file is on the Internet.

Manually convert into absolute link

The fix is to change the ExampleAppName.application file and provide it an absolute path to where the AppName.exe.manifest exists on the Internet.