2010-05-24 6 views
2

J'ai une configuration pour une application récemment convertie en projet Framework 4.0 (ne sait pas si c'est pertinent). La configuration doit écrire dans le registre (Local Machine) et jusqu'à présent, cela a toujours fonctionné parfaitement, mais maintenant, il ne parvient pas à écrire dans le registre sur une machine propre (exécutant Windows 7, 64 bits).Erreur de projet de déploiement Visual Studio lors de l'écriture dans le registre

La configuration n'échoue pas, ne montre aucun avertissement, mais il n'écrit pas dans le registre (j'ai même défini la propriété AlwaysCreate sur true sur chaque touche, juste au cas où) application à terminer au démarrage.

Quelle est la cause de ceci? Je n'ai jamais rencontré une telle erreur auparavant.

Modifier: J'ai essayé d'exécuter le programme d'installation en tant qu'administrateur, n'a rien changé.

Répondre

3

Il écrit au registre correct, juste à la mauvaise touche. Les programmes d'installation 32 bits écrivent dans HKLM \ Software \ Wow6432Node, l'ensemble des clés de registre que les programmes 32 bits voient. Votre application fonctionnera en mode 64 bits, elle ne sera pas redirigée comme ça.

Vous devez définir la plate-forme cible dans votre projet de configuration. Vous pouvez également forcer votre application à s'exécuter en mode 32 bits avec le paramètre Plate-forme cible = x86 dans l'onglet Générer.

0

Il s'avère que le projet d'installation possède une propriété TargetPlatform, définie sur x86. Je l'ai changé en x64 et cela fonctionne correctement maintenant.

Qui aurait pensé que ce serait la seule chose affectée par la plate-forme cible mal ...