Wie bestimme ich, was der Windows Installer (msiexec) tut?

8

Nach der Einführung eines neuen Softwarepakets sehe ich eine hohe CPU-Auslastung auf Computern. Ein Prozess, der wirklich aktiv zu sein scheint, ist msiexec, der eigentlich nicht ausgeführt werden sollte. Ich schaue es mir im Prozess-Explorer an und sehe ab und zu, wie es neue Prozesse startet, von denen ich weiß, dass sie mit der neuen Software zusammenhängen ... aber die Prozesse enden ziemlich schnell.

Gibt es eine Möglichkeit, einige Details zu den aktuellen Funktionen des Windows-Installationsprogramms abzurufen?

Boden
quelle
Siehe meine Antwort im Thread. Wenn msiexec.exe angezeigt wird und dann ziemlich schnell endet, hat die Windows Installer-Engine wahrscheinlich eine benutzerdefinierte Aktion in der zu installierenden MSI ausgeführt. Mit anderen Worten, ein Stück benutzerdefinierten Codes, um die Anwendung korrekt einzurichten.
Stein Åsmul

Antworten:

7

Ich würde dem Vorschlag für Process Explorer / Process Monitor hinzufügen - FileMon und RegMon auch von Sysinternals aus ausführen. Sie können ein Protokoll der msiexec und der zugehörigen Prozesse filtern / speichern, in eine CSV exportieren und eine vollständige Liste der Aktionen für das Dateisystem und die Registrierung erstellen. Vergleichen / kontrastieren Sie auch mit dem, was in das Windows Installer-Protokoll geschrieben wurde.

Sie können sich auch ansehen, was Scott Willekes Less Msiérables (LessMSI) für Sie tun kann ...

http://lessmsi.activescott.com/

Verwenden Sie diese Option, um Anleitungen und / oder Inhalte von MSI zu extrahieren und zu ändern, neu zu verpacken, alle Elemente im MSI-Paket zu überprüfen usw.

mctsonic
quelle
2
Process Monitor kapselt alle Funktionen von FileMon und RegMon in einer App.
EBGreen
Und RegMon / Filemon wird Ende des Monats eingestellt.
Dmoisan
5

Holen Sie sich Process Monitor von Sysyinternals (MS jetzt). Richten Sie den Filter so ein, dass nur msiexec.exe angezeigt wird. Es wird Ihnen alles sagen, was der Prozess tut.

EBGreen
quelle
3

Das Windows-Installationsprogramm kann aus mehreren Gründen mehrere Instanzen von msiexec.exe erzeugen.

Zunächst bietet Windows Installer eine Benutzeroberflächensequenz (die durch unbeaufsichtigtes Ausführen der Installation übersprungen werden kann) und eine Installationssequenz . Die beiden Tabellen für diese Sequenzen heißen InstallUISequence bzw. InstallExecuteSequence . Aufgrund der Art und Weise, wie Windows Installer während der Installation " erhöhte Rechte " zulässt, wird InstallExecuteSequence als Systemkonto ausgeführt. Mit anderen Worten, wenn Sie das Setup im GUI-Modus starten und die Installation auf diese Weise starten, werden normalerweise zwei msiexec.exe-Prozesse angezeigt.

Darüber hinaus können MSI-Dateien benutzerdefinierte Aktionen starten, von denen einige neue Prozesse (EXE-Dateien) erzeugen können. Diese Aktionen können weitere msiexec.exe-Prozesse auslösen, die im Task-Manager angezeigt werden.

Aaron Stebner hat hier eine bessere Erklärung: http://blogs.msdn.com/astebner/archive/2005/03/02/384088.aspx

Noch ein Link: https://www.symantec.com/connect/blogs/multiple-msiexec-processes-running-during-installation

Stein Åsmul
quelle