ClickOnce Error: The deployment identity does not match the subscription

半世苍凉 提交于 2019-12-19 05:15:17

问题


I'm using Visual Studio 2008 SP1.

I have a Windows Forms application deployed internally using ClickOnce in a shared folder on the local network.

The test certificate pfx expires in 2035.

I have published the update to the internal shared folder several times.

Note that the project is only set to 'Sign the ClickOnce manifests' and does not sign the assembly.

Now, I again publish a new version of my application.

When users click on their icons to run the application we get this error (it had always updated prior to deploying with the test certificate).

Dirección URL de la implementación :
file:///C:/Documents%20and%20Settings/Usuario.NOTARIAS3/Men%C3%BA%20Inicio/Programas/GrupoBackup/Expediente%20Electr%C3%B3nico.appref-ms%7C
Dirección URL del proveedor de la implementación :
file://192.168.13.111/compartida/AdministradorWin.application La
activación de C:\Documents and Settings\Useuario.NOTARIAS3\Menú
Inicio\Programas\GrupoBackup\Expediente Electrónico.appref-ms| dio
como resultado una excepción. Se detectaron los siguientes mensajes de
error:
+ The deployment identity does not match the subscription


OPERATION PROGRESS STATUS * [2/20/2008 11:23:21 AM] : Activation of
C:\Documents and Settings\Usuario.NOTARIAS3\Menú
Inicio\Programas\GrupoBackup\Expediente Electrónico.appref-ms| has
started. * [2/20/2008 11:23:21 AM] : Performing necessary update
check as specified by the deployment.

ERROR DETAILS

  • [21/06/2010 20:33:10] System.Deployment.Application.DeploymentException (SubscriptionState)
  • La identidad de la implementación no coincide con la suscripción.
  • Origen: System.Deployment
  • Seguimiento de la pila: en System.Deployment.Application.SubscriptionStore.CheckUpdateInManifest(SubscriptionState
    subState, Uri updateCodebaseUri, AssemblyManifest deployment, Version
    currentVersion) en
    System.Deployment.Application.ApplicationActivator.PerformDeploymentUpdate(SubscriptionState&
    subState, String& errorPageUrl) en
    System.Deployment.Application.ApplicationActivator.ProcessOrFollowShortcut(String
    shortcutFile, String& errorPageUrl, TempFile& deployFile) en
    System.Deployment.Application.ApplicationActivator.PerformDeploymentActivation(Uri
    activationUri, Boolean isShortcut, String textualSubId, String
    deploymentProviderUrlFromExtension, BrowserSettings browserSettings,
    String& errorPageUrl) en
    System.Deployment.Application.ApplicationActivator.ActivateDeploymentWorker(Object
    state)

I use regedit to search for this key:

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Uninstall\7e3a7433abfe6213

PC non updated

AppId file://192.168.13.111/COMPARTIDA/AdministradorWin.application#AdministradorWin.app, Culture=neutral, PublicKeyToken=4b005ceeffd565b0, processorArchitecture=msil

Version = 1.0.0.14

FileName = Expediente Electrónico

Publisher = GrupoBackup

Folder Name = GrupoBackup

PC UPDATED (uninstall-reinstall, but I want to AVOID it)

AppId file://192.168.13.111/compartida/AdministradorWin.application#AdministradorWin.application, Culture=neutral, PublicKeyToken=4b005ceeffd565b0, processorArchitecture=msil

Version = 1.0.0.30

FileName = Expediente Electrónico

Publisher = GrupoBackup

Folder Name = GrupoBackup

SuiteName= OGF Suite

Changes PC Non updated - Pc updated are:

1.) Suite Name is new value (I set it in properties Publish tab in Visual Studio)

2.) Version

and 3.)

AdministradorWin.app

from file://192.168.13.111/COMPARTIDA/AdministradorWin.application#AdministradorWin.app,

vs

AdministradorWin.application,

from file://192.168.13.111/compartida/AdministradorWin.application#AdministradorWin.application,

If I uninstall and then reinstall the app from scratch it all works. However, I was trying to avoid having to do this.

I get this error when I try to deploy a project that was previously successful.

I re-tried, after deleting all the manifests, but still no joy.

Is there a way to fix this?

In Publish Options -> Manifests

Use application manifest for trust information is UN CHECKED.


回答1:


Did you change your target CPU from Any CPU to x86?

If you changed this, you will have to reinstall the application.




回答2:


'Check Publish -> Installation Folder URL' and make sure it is not set incorrectly (sometimes it only shows up during publishing process)

'Check Publish -> Updates...' and make sure the Update Location is not set incorrectly.

To be absolutely sure set both these to be the same as the Publishing Folder Location. You'll need to tick 'The Application should check for update - Before the application starts'.

I had to do this to fix issue in my case.




回答3:


What do you mean when you say the following? "Changes: I set Suite Name value; Version and #AdministradorWin.app, vs #AdministradorWin.application".

It's the last bit I'm interested in. Did you change the assembly name?

There are a handful of settings that make up the identity of the deployment. Target CPU (as noted by zezespecial above), installation URL, and assembly name are three of them. Did you change any of these? What other changes did you make to the deployment?



来源:https://stackoverflow.com/questions/3100050/clickonce-error-the-deployment-identity-does-not-match-the-subscription

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!