2010-06-23 14 views
9

J'utilise Visual Studio 2008 SP1.ClickOnce Erreur: l'identité de déploiement ne correspond pas à l'abonnement

J'ai une application Windows Forms déployée en interne à l'aide de ClickOnce dans un dossier partagé sur le réseau local.

le certificat d'essai PFX expire en 2035.

J'ai publié la mise à jour des dossiers internes partagés à plusieurs reprises.

Notez que le projet est défini uniquement sur 'Signer les manifestes ClickOnce' et ne signe pas l'assembly.

Maintenant, je publie à nouveau une nouvelle version de mon application.

Lorsque les utilisateurs cliquent sur leurs icônes pour exécuter l'application, nous obtenons cette erreur (elle avait toujours été mise à jour avant le déploiement avec le certificat de test).

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.

DÉTAILS DE L'ERREUR

  • [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)

J'utilise regedit pour rechercher cette clé:

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

PC non mis à jour

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

Version = 1.0.0.14

= FileName expediente Electrónico

Editeur = GrupoBackup

Nom du dossier = GrupoBackup

PC MIS A JOUR (désinstallation-réinstallation, mais je veux éviter)

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

version = 1.0.0.30

= FileName Expediente Electrónico

Editeur = GrupoBackup

Folder Name = GrupoBackup

SuiteName = OGF Suite

Changements PC non mis à jour - PC mis à jour sont:

1.) Nom Suite est une nouvelle valeur (je l'ai mis dans les propriétés onglet Publier dans Visual Studio)

2.) Version

et 3.)

AdministradorWin.app

fichier: //192.168.13.111/COMPARTIDA/AdministradorWin.application#AdministradorWin.app,

vs

AdministradorWin.application,

du fichier : //192.168.13.111/compartida/AdministradorWin.application#AdministradorWin.application,

Si je désinstaller puis réinstaller l'application à partir de zéro tout cela fonctionne. Cependant, j'essayais d'éviter d'avoir à faire cela.

Je reçois cette erreur lorsque j'essaie de déployer un projet qui a réussi précédemment.

J'ai réessayé, après avoir supprimé tous les manifestes, mais toujours pas de joie.

Y at-il un moyen de résoudre ce problème?

Dans Options de publication -> Manifestes

utilisation manifeste d'application pour les informations de confiance est UN cochés.

Répondre

22

Avez-vous changé votre CPU cible de N'importe quel CPU à x86?

Si vous avez changé cela, vous devrez réinstaller l'application.

+0

Cela m'est arrivé. Je l'ai changé à CPUAny et cela a fonctionné encore. Plus tard, je vais le changer et demander aux utilisateurs de le réinstaller. – AtliB

+1

Je l'ai fait exactement aujourd'hui. changé à AnyCPU - maintenant les clients disent, même après une désinstallation, le problème persiste. #stumped –

4

Que voulez-vous dire quand vous dites ce qui suit? "Modifications: J'ai défini la valeur Nom de la suite, Version et # AdministradorWin.app, vs # AdministradorWin.application".

C'est le dernier morceau qui m'intéresse. Avez-vous changé le nom de l'assemblage?

Il existe une poignée de paramètres qui constituent l'identité du déploiement. CPU cible (comme indiqué par zezespecial ci-dessus), l'URL d'installation et le nom de l'assembly sont trois d'entre eux. Avez-vous changé l'un d'entre eux? Quels autres changements avez-vous apporté au déploiement?

+0

Je change de nom de suite, je pense que ce n'était que des changements. – Kiquenet

+0

Si vous le modifiez, est-ce que cela résout le problème? Je ne peux pas imaginer que cela cause réellement un problème, mais ça vaut la peine d'essayer. – RobinDotNet

+0

quels paramètres constituent l'identité du déploiement? J'ai un problème similaire – Martin

4

« Check Publish -> Dossier d'installation URL » et assurez-vous qu'il ne est pas réglé correctement (parfois il ne se présente lors de la publication processus)

« Check Publish -> Mises à jour ... » et assurez-vous la mise à jour L'emplacement n'est pas défini de manière incorrecte. Pour être absolument sûr, définissez les deux comme étant identiques à l'emplacement du dossier de publication. Vous devrez cocher "L'application doit vérifier la mise à jour - Avant le démarrage de l'application".

Je devais faire ceci pour résoudre le problème dans mon cas.

+0

J'avais changé l'emplacement de mise à jour de l'adresse IP (ce qui était initialement) au nom DNS, quand je l'ai changé, ce problème a été résolu ... – Prokurors