Freigeben über


Installer-Tool (Installutil.exe)

Mit dem Installer-Tool können Sie Serverressourcen installieren und deinstallieren, indem Sie die Komponenten des Installationsprogramms in einer angegebenen Assembly ausführen. Dieses Tool wird zusammen mit den Klassen im System.Configuration.Install-Namespace verwendet.

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

Hinweise

Argument Beschreibung

assemblyname

Der Name der Assembly, in der die Komponenten des Installationsprogramms ausgeführt werden sollen.

Option Beschreibung

/h[elp]

Zeigt die Befehlssyntax und Optionen für das Tool an.

/help assemblypath

Zeigt alle weiteren Optionen an, die von den jeweiligen Installationsprogrammen in der angegebenen Assembly erkannt werden.

/?

Zeigt die Befehlssyntax und Optionen für das Tool an.

/? assemblypath

Zeigt alle weiteren Optionen an, die von den jeweiligen Installationsprogrammen in der angegebenen Assembly erkannt werden.

/LogFile=[Dateiname]

Gibt den Namen der Protokolldatei an, in der der Installationsverlauf aufgezeichnet wird. Die Standardeinstellung ist assemblyname.InstallLog.

/AssemblyName assemblyName

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

[,Culture=locale]

[,PublicKeyToken=publicKeyToken]]

Gibt den Namen einer Assembly an. Der Assemblyname muss mit der Version, Kultur und dem öffentlichen Schlüsseltoken der Assembly vollständig qualifiziert werden. Der vollqualifizierte Name muss in Anführungszeichen stehen.

"myAssembly, Culture=neutral, PublicKeyToken=0038abc9deabfle5, Version=2.0.0.0" ist beispielsweise ein vollqualifizierter Assemblyname.

/LogToConsole={true|false}

Wenn true, wird die Ausgabe in der Konsole angezeigt. Wenn false (Standardeinstellung), wird die Ausgabe in der Konsole unterdrückt.

/ShowCallStack

Schreibt die Aufrufliste in das Protokoll, wenn im Verlauf der Installation eine Ausnahme eintritt.

/u[ninstall]

Deinstalliert eine Assembly. Im Gegensatz zu anderen Optionen wird /u auf alle Assemblys angewendet, wobei es unerheblich ist, an welcher Stelle sich die Option in der Befehlszeile befindet.

Hinweise

Ab .NET Framework, Version 2.0, ist im Lieferumfang der 32-Bit-Version der Common Language Runtime ausschließlich die 32-Bit-Version des Installer-Tools enthalten. Der Lieferumfang der 64-Bit-Version der Common Language Runtime umfasst hingegen sowohl eine 32-Bit-Version als auch eine 64-Bit-Version des Installer-Tools. Verwenden Sie in der 64-Bit-Common Language Runtime zur Installation von 32-Bit-Assemblys das 32-Bit-Installer-Tool und zur Installation von 64-Bit-Assemblys sowie von Microsoft Intermediate Language-Assemblys das 64-Bit-Installer-Tool. Hinsichtlich aller sonstigen Aspekte verhalten sich beide Versionen des Installer-Tools gleich.

Anwendungen von Microsoft .NET Framework bestehen aus herkömmlichen Programmdateien und zugeordneten Ressourcen wie Meldungswarteschlangen, Ereignisprotokollen und Leistungsindikatoren, die beim Einsatz der Anwendung erstellt werden müssen. Sie können die Komponenten des Installationsprogramms einer Assembly verwenden, um diese Ressourcen beim Installieren der Anwendung zu erstellen und beim Deinstallieren der Anwendung zu entfernen. Installutil.exe erkennt diese Komponenten des Installationsprogramms und führt sie aus.

Sie können mehrere Assemblys in einer Befehlszeile angeben. Jede Option, die vor einem Assemblynamen steht, bezieht sich auf die Installation dieser Assembly. Für eine Assembly angegebene Optionen werden auf alle nachfolgenden Assemblys angewendet, wenn die Option nicht mit dem Namen einer neuen Assembly angegeben wird.

Wenn Sie Installutil.exe ohne Angabe von Optionen für eine Assembly ausführen, werden die folgenden Dateien im Verzeichnis der Assembly platziert:

  • InstallUtil.InstallLog

    Diese Datei enthält eine allgemeine Beschreibung des Installationsverlaufs.

  • assemblyname.InstallLog

    Diese Datei enthält Informationen, die sich auf die Commitphase des Installationsverlaufs beziehen. Weitere Informationen über die Commitphase finden Sie unter der Installer.Commit-Methode.

  • assemblyname.InstallState

    Diese Datei enthält Daten für die Deinstallation der Assembly.

Installutil.exe überprüft die angegebene Assembly mittels Reflexion und sucht alle Installer-Typen, bei denen für RunInstallerAttribute true festgelegt wurde. Anschließend führt das Tool für jede Instanz des Installer-Typs entweder die Install-Methode oder die Uninstall-Methode aus. Installutil.exe führt die Installation in Form einer Transaktion durch. Wenn die Installation einer Assembly fehlschlägt, wird die Installation aller anderen Assemblys zurückgenommen. Die Deinstallation wird nicht als Transaktion durchgeführt.

Verzögert signierte Assemblys können mit Installutil.exe weder installiert noch deinstalliert werden, jedoch kann das Tool Assemblys mit starkem Namen installieren und deinstallieren.

Beachten Sie, dass ein mit C++ erstellter Windows-Dienst nicht mit Installutil.exe kompatibel ist. Installutil.exe ist nicht in der Lage, den eingebetteten systemeigenen Code, der vom C++-Compiler erstellt wurde, zu erkennen. Wenn Sie versuchen, einen mit C++ erstellten Windows-Dienst mit Installutil.exe zu verwenden, wird eine Ausnahme, z. B. BadImageFormatException, ausgelöst. Verschieben Sie bei diesem Szenario den Dienstcode in ein C++-Modul. Anschließend schreiben Sie das Installerobjekt in der Programmiersprache C# oder Visual Basic.

Beispiele

Mit dem folgenden Befehl wird eine Beschreibung der Befehlssyntax und der Optionen angezeigt.

installutil

Der folgende Befehl führt die Komponenten des Installationsprogramms in der Assembly myAssembly.exe aus.

installutil myAssembly.exe

Der folgende Befehl führt die Komponenten des Installationsprogramms in einer Assembly mithilfe des Schalters /AssemblyName und eines vollqualifizierten Namens aus.

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

Der folgende Befehl führt die Komponenten des Deinstallationsprogramms in der Assembly myAssembly.exe aus.

installutil /u myAssembly.exe 

Der folgende Befehl führt die Installationsprogramme in der Assembly myAssembly.exe aus und gibt an, dass Verlaufsinformationen in myLog.InstallLog geschrieben werden.

installutil /LogFile=myLog.InstallLog myAssembly.exe 

Der folgende Befehl schreibt den Installationsverlauf für myAssembly.exe in myLog.InstallLog und den Verlauf für myTestAssembly.exe in myTestLog.InstallLog..

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

Siehe auch

Referenz

.NET Framework-Tools
System.Configuration.Install Namespace
SDK-Eingabeaufforderung