2008-10-21 13 views

Répondre

2

Vous devez ajouter une ligne à la table d'environnement du fichier MSI pour ce faire. Vous pouvez trouver des informations sur ce tableau ici, http://msdn.microsoft.com/en-us/library/aa368369(VS.85).aspx. Vous pouvez utiliser Orca pour cela ou automatiser la procédure avec certains scripts VB. Le SDK de la plate-forme contient le fichier de script VB, WiRunSQL.vbs, que vous pouvez utiliser pour automatiser les actions de construction de votre programme.

+0

Avez-vous un lien sur la façon d'insérer une entrée dans la table d'environnement en utilisant une action de construction? – Mel

+0

Il existe un lien vers des informations d'aide de base sur le fichier de script WiRunSQL.vbs ici, http://msdn.microsoft.com/en-us/library/windows/desktop/aa368568(v=vs.85).aspx. Vous devez télécharger et installer une copie du SDK Windows pour obtenir le fichier réel. – LanceSc

+0

Voici quelques articles de blog décrivant le processus de base de la mise en place d'un événement post-construction MSI avec Visual Studio 2005, http://blogs.msdn.com/b/astebner/archive/2006/08/24/716145.aspx et http : //blogs.msdn.com/b/astebner/archive/2006/08/12/696833.aspx – LanceSc

4

Utilisez la vue de l'éditeur de registre dans le projet de configuration et créez la clé de chemin à l'emplacement approprié ie. HKEY_LOCAL_MACHINE \ System \ CurrentControlSet \ Control \ Session Manager \ Environment et créer une valeur chaîne appelée "Path" et entrez comme votre valeur: "[% Chemin], [TARGETDIR]"

[% Chemin] est un espace réservé pour la chaîne d'origine dans la valeur Path existante.

+1

Ceci remplace et détruit le chemin existant –

+0

@MartinMurphy Il ne détruit pas réellement le chemin. Cela fonctionne très bien. –

+0

@ MartinMurphy J'ai eu le même problème mais quand je reconstruis le projet, le problème disparaît. J'utilise VS 2010. – Ashi

4

Il existe des problèmes avec l'approche mentionnée ci-dessus de l'utilisation de la vue de l'éditeur de registre et la création d'une clé appelée PATH avec la valeur "[% Path]; [TARGETDIR]". Bien que la méthode fonctionne correctement lors de l'installation du programme, le comportement par défaut lors de la désinstallation consiste à supprimer la variable PATH entière, et pas seulement le [TARGETDIR] ajouté. Je n'ai pas trouvé un moyen de désactiver ce comportement, bien qu'il semble que certains comportements conditionnels soient possibles.