Outil Installer Tool (Installutil.exe)

Mise à jour : novembre 2007

L'outil Installer Tool (Programme d'installation) vous permet d'installer et de désinstaller les ressources du serveur en exécutant les composants du programme d'installation dans un assembly spécifié. Cet outil fonctionne en association avec les classes figurant dans l'espace de noms System.Configuration.Install.

installutil [/uninstall][option [...]]assemblyname ]
[option [...]]assemblyname 

Notes

Argument

Description

assemblyname

Nom de l'assembly dans lequel exécuter les composants du programme d'installation.

Option

Description

/h[elp]

Affiche la syntaxe et les options de commande de l'outil.

/help assemblypath

Affiche toutes options supplémentaires reconnues par des programmes d'installation individuels dans l'assembly spécifié.

/?

Affiche la syntaxe et les options de commande de l'outil.

/? assemblypath

Affiche toutes options supplémentaires reconnues par des programmes d'installation individuels dans l'assembly spécifié.

/LogFile=[nom_fichier]

Spécifie le nom du fichier journal dans lequel la progression de l'installation est enregistrée. Par défaut, le nom est assemblyname.InstallLog.

/AssemblyNameassemblyName

[,Version=major.minor.build.revision]

[,Culture=locale]

[,PublicKeyToken=publicKeyToken]]

Spécifie le nom d'un assembly. Le nom de l'assembly doit être qualifié complet avec la version, la culture et le jeton de clé publique de l'assembly. Le nom qualifié complet doit être placé entre guillemets.

Par exemple, "myAssembly, Culture=neutral, PublicKeyToken=0038abc9deabfle5, Version=2.0.0.0" est un nom d'assembly qualifié complet.

/LogToConsole={true|false}

Si la valeur true est affectée, affiche la sortie dans la console. Si la valeur par défaut false est affectée, supprime la sortie dans la console.

/ShowCallStack

Affiche la pile des appels dans le journal si une exception se produit à tout moment de l'installation.

/u[ninstall]

Désinstalle un assembly. À la différence des autres options, /u s'applique à tous les assemblys, quel que soit leur emplacement sur la ligne de commande.

Notes

Depuis le .NET Framework version 2.0, la version 32 bits du Common Language Runtime (CLR) continue d'être fournie uniquement avec la version 32 bits de l'outil Installer, mais la version 64 bits du CLR est fournie avec les versions 32 bits et 64 bits de l'outil Installer. Lorsque vous utilisez la version 64 bits du CLR, utilisez l'outil Installer 32 bits pour installer des assemblys 32 bits et l'outil Installer 64 bits pour les assemblys 64 bits et Microsoft Intermediate Language. Sinon, les deux versions de l'outil Installer ont le même comportement.

Les applications Microsoft .NET Framework comportent des fichiers programmes traditionnels et des ressources associées, telles que les files d'attente de messages, les journaux des événements et les compteurs de performance devant être créés lors du déploiement de l'application. Vous pouvez utiliser les composants du programme d'installation d'un assembly pour créer ces ressources lors de l'installation de l'application et les supprimer lors de la désinstallation de l'application. Installutil.exe détecte et exécute les composants de ce programme d'installation.

Vous pouvez spécifier plusieurs assemblys sur la même ligne de commande. Toute option précédant le nom d'un assembly s'applique à l'installation de cet assembly. Les options spécifiées pour un assembly s'appliquent à tous les assemblys subséquents, à moins qu'une option ne soit spécifiée avec le nom d'un nouvel assembly.

Si vous exécutez Installutil.exe par rapport à un assembly sans spécifier d'options, les trois fichiers suivants seront alors placés dans le répertoire de cet assembly :

  • InstallUtil.InstallLog

    Comporte une description générale de la progression de l'installation.

  • assemblyname.InstallLog

    Comporte des informations propres à la phase de validation du processus d'installation. Pour plus d'informations sur la phase de validation, consultez Installer.Commit, méthode.

  • assemblyname.InstallState

    Comporte des données permettant de désinstaller l'assembly.

Installutil.exe utilise la réflexion pour contrôler l'assembly spécifié et rechercher tous les types Installer dont RunInstallerAttribute a la valeur true. L'outil exécute alors soit la méthode Install soit la méthode Uninstall sur chaque instance du type Installer. Installutil.exe procède à l'installation sous une forme transactionnelle ; en cas d'échec de l'installation de l'un des assemblys, l'installation de tous les autres assemblys est restaurée. La désinstallation ne fonctionne pas de manière transactionnelle.

Installutil.exe ne peut pas installer ou désinstaller les assemblys dont la signature est différée, mais il peut installer ou désinstaller des assemblys à nom fort.

Notez qu'il n'est pas possible de déployer un service Windows créé à l'aide de C++ avec Installutil.exe. Installutil.exe n'est pas capable d'identifier le code natif incorporé généré par le compilateur C++. Si vous tentez de déployer un service Windows créé à l'aide de C++ avec Installutil.exe, cela provoque la levée d'une exception telle que BadImageFormatException. Pour utiliser ce scénario, déplacez le code de service dans un module C++. Écrivez ensuite l'objet d'installation en C# ou Visual Basic.

Exemples

La commande suivante affiche une description de la syntaxe de commande et des options.

installutil

La commande suivante exécute les composants du programme d'installation dans l'assembly myAssembly.exe.

installutil myAssembly.exe

La commande suivante exécute les composants d'installation dans un assembly en utilisant le commutateur /AssemblyName et un nom qualifié complet.

installutil /AssemblyName "myAssembly, Culture=neutral, PublicKeyToken=0038abc9deabfle5, Version=2.0.0.0"

La commande suivante exécute les composants du programme de désinstallation dans l'assembly myAssembly.exe.

installutil /u myAssembly.exe 

La commande suivante exécute les programmes d'installation dans l'assembly myAssembly.exe et spécifie l'écriture des informations sur la progression dans myLog.InstallLog.

installutil /LogFile=myLog.InstallLog myAssembly.exe 

La commande suivante écrit la progression de l'installation de myAssembly.exe dans myLog.InstallLog et celle de myTestAssembly.exe dans myTestLog.InstallLog..

installutil /LogFile=myLog.InstallLog myAssembly.exe /LogFile = myTestLog.InstallLog myTestAssembly.exe

Voir aussi

Référence

Outils du .NET Framework

System.Configuration.Install

Invite de commandes du Kit de développement SDK