2017-02-09 1 views
0

Nous avons un composant ClickOnce installé sur un poste client qui ouvre un fichier docx dans Word lorsqu'un utilisateur clique sur une URL (dans IE11). Lorsque nous avons déployé une nouvelle version du composant sur notre serveur QA pour le tester, il a commencé à échouer lors de l'installation avec le code suivant: DeploymentException, ce qui n'a aucun sens car cela fonctionnait parfaitement pour toutes les versions précédentes.ClickOnce component DeploymentUriDifferent exception lors du déploiement à partir d'une application ASP.NET WebForms

Des pensées?

ERROR DETAILS 
Following errors were detected during this operation. 
* [08/02/2017 3:56:03 PM] System.Deployment.Application.DeploymentException (DeploymentUriDifferent) 
    - You cannot start application Company Name Document Handler from this location because it is already installed from a different location. 
    - Source: System.Deployment 
    - Stack trace: 
     at System.Deployment.Application.ApplicationActivator.CheckDeploymentProviderValidity(ActivationDescription actDesc, SubscriptionState subState) 
     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) 
    --- Inner Exception --- 
    System.Deployment.Application.DeploymentException (DeploymentUriDifferent) 
    - You cannot start application Company Name Document Handler from location http://QAserver/Project.Name/ClickOnce/Project.Name.ClickOnce.application 
    it is already installed from location http://localhost/Project.Name.WebClient/ClickOnce/Project.Name.ClickOnce.application. 
    You can start it from location http://localhost/Project.Name.WebClient/ClickOnce/Project.Name.ClickOnce.application 
    or you can uninstall it and reinstall it from location http://QAserver/Project.Name/ClickOnce/Project.Name.ClickOnce.application. 
    If you reinstall the application, be aware that you might lose any customizations that you made to the application. 
+0

ClickOnce a une fonction de mise à jour automatique qui vous permettent de mettre à jour vers une nouvelle version sans désinstaller le précédent. Une fois que vous avez publié une nouvelle version dans cette URL spéciale, votre utilisateur reçoit des informations de mise à jour lorsqu'il exécute l'application installée. On ne leur dira pas de désinstaller et après plusieurs minutes (en fonction de la taille de l'application et de la vitesse de téléchargement) leur application sera mise à jour. https://robindotnet.wordpress.com/2009/03/30/clickonce-and-expiring-certificates/ – Mokey

+0

Oui, c'est exactement ce qui se passait jusqu'ici. C'est pourquoi c'est un mystère complet pour moi quant à pourquoi il a cessé de fonctionner tout à coup. – Dan

+0

essayez d'envoyer le certificat et demandez à cet utilisateur d'installer le certificat simplement en double-cliquant dessus. – Mokey

Répondre

0

Eh bien, le problème est avéré être lié à un changement dans les paramètres au sein de notre fichier ClickOnce.csproj que nous ne réalisions pas été vérifiée dans un de nos développeurs. Plus précisément, lorsque Install est défini sur true et DisallowUrlActivation est false, nous éprouvions le problème. La modification de ces paramètres à ce qu'ils étaient à l'origine fixé tous les problèmes avec l'installation ClickOnce:

<Install>false</Install> 
<DisallowUrlActivation>true</DisallowUrlActivation> 

Hope this helps quelqu'un d'autre ...