Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

MSBuild ClickOnce error: "Deployment and application do not have matching security zones"

We're trying to publish a ClickOnce application through MSBuild. We've got it working fine for an installed version of the Windows application.

However, when we set install to false, so that it just runs the application from the web, we get the following error when we try to run the application from the URL: "Deployment and application do not have matching security zones" This works fine in Internet Explorer. We only get the error message in Chrome and FireFox.

Here is a sample of the project file settings.

<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="3.5">
  <PropertyGroup>
    <SrcTreeRoot>$(MSBuildProjectDirectory)\..\..\..</SrcTreeRoot>
    <!--ClickOnceDeployFolder>$(WebOutputDir)\AnalyzerPC</ClickOnceDeployFolder-->
    <ProjectGuid>{8205E593-F400-41AE-8D6F-DEA290B2DCF9}</ProjectGuid>
    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
    <ApplicationIcon>Graphics\EDA Icon.ico</ApplicationIcon>
    <AssemblyName>DASHQueryBuilder</AssemblyName>
    <OutputType>WinExe</OutputType>
    <RootNamespace>TetraData.Analyzer</RootNamespace>
    <FileUpgradeFlags>
    </FileUpgradeFlags>
    <OldToolsVersion>2.0</OldToolsVersion>
    <IsWebBootstrapper>false</IsWebBootstrapper>
    <ManifestCertificateThumbprint>...</ManifestCertificateThumbprint>
    <GenerateManifests>true</GenerateManifests>
    <SignManifests>true</SignManifests>
    <SignAssembly>true</SignAssembly>
    <ManifestKeyFile>$(BuildDir)\Certificates\TetraDataCode.pfx</ManifestKeyFile>
    <ProductVersion>9.0.21022</ProductVersion>
    <PublishUrl>http://localhost/DASHQueryBuilder/</PublishUrl>
    <Install>false</Install>
    <!--InstallFrom>Web</InstallFrom-->
    <UpdateEnabled>false</UpdateEnabled>
    <MapFileExtensions>true</MapFileExtensions>
    <PublisherName>Follett Software Company</PublisherName>
    <TrustUrlParameters>true</TrustUrlParameters>
    <ApplicationRevision>0</ApplicationRevision>
    <UseApplicationTrust>false</UseApplicationTrust>
    <PublishWizardCompleted>true</PublishWizardCompleted>
    <BootstrapperEnabled>false</BootstrapperEnabled>
  </PropertyGroup>
  <Import Project="$(SrcTreeRoot)\Build\TaskInit.Tasks" />
  <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
  <Import Project="$(SrcTreeRoot)\Build\TaskOverrides.Tasks" />
  <Import Project="$(MSBuildProjectDirectory)\Analyzer.csproj" />
  <PropertyGroup>
    <PublishDir>$(WebOutputDir)\DASH Query Builder\</PublishDir>
    <ApplicationVersion>$(MajorMinorVersion).0.0</ApplicationVersion>
  </PropertyGroup>
  <Target Name="BeforeResolveReferences">
    <Copy SourceFiles="$(MSBuildProjectDirectory)\DASHQueryBuilder.config" DestinationFiles="$(MSBuildProjectDirectory)\app.config" />
  </Target>
</Project>
like image 572
Ben Anderson Avatar asked May 10 '10 20:05

Ben Anderson


People also ask

How do I fix deployment and application do not have matching security zones error?

How To Fix Deployment and Application do not have Matching Security Zones Error. The solution is to download the application using Internet Explorer. By doing this, the . application file itself doesn't actually download, instead it is run within Internet Explorer.

How do I turn off ClickOnce security settings?

To disable ClickOnce security settings With a project selected in Solution Explorer, on the Project menu, click Properties. Click the Security tab. Clear the Enable ClickOnce Security Settings check box.


2 Answers

Below is Microsoft's answer to the thread I posted on their forum. Basically they did support chrome back then, but now there is a plugin for Chrome here that works great.

Hi fbanderson,

I found an article talking about ClickOnce in Firefox.

http://windowsclient.net/wpf/wpf35/wpf-deploying-clickonce-ie-firefox.aspx

.NET Framework 3.5 SP1 offers a component called .NET Framework Assistant 1.0 which handles ClickOnce .applications. If you have installed that component, the dialog appear to you in FireFox should contain a “Run ClickOnce application” button. Do you see that button when you trying to launch the app?

For Google Chrome, we don’t have experience for it. It is a new browser and we lack test on it.

Sincerely,

Kira Qian

MSDN Subscriber Support in Forum

If you have any feedback on our support, please contact [email protected] Please remember to mark the replies as answers if they help and unmark them if they provide no help. Welcome to the

like image 51
Ben Anderson Avatar answered Sep 21 '22 14:09

Ben Anderson


I found a solution that I'll be glad to share with you. You can do it with MageUI or with Visual Studio. I am really delighted to use ClickOnce as my deployment now works both with Internet Explorer, Chrome, and Firefox.

MageUI

If you use MageUI, you have to check Include the provider URL in the Manifest and type the associated URL of the web server.

Visual Studio

If you use Microsoft Visual Studio, then on the Publish tab of the project properties, click on the Updates... button, then in the update location, type the URL of the publishing Web Server.

like image 25
Backouche Avatar answered Sep 21 '22 14:09

Backouche