Windows Installer hat in der Tat den Ruf, langsam zu sein. Es gibt ein paar Dinge, die dazu beitragen, und ich werde sie unten ansprechen. Aber letztendlich sollte man sich fragen, ob eine, zwei oder drei Minuten wirklich ein Streitpunkt bei der Installation und Deinstallation von Software sind. Ich nehme mir mehr Zeit als das Durchblättern von Fernsehsendern :)
Das Register
Dies ist der Täter Nummer eins. Windows Installer nutzt die Registrierung intensiv für seine Vorgänge. Wenn Ihr System ausgereift ist, Sie Anwendungen installieren und deinstallieren und die Registrierung größer oder fragmentierter wird, wird MSI langsamer. Dieselbe Anwendung wird bei einer ursprünglichen Windows-Installation viel schneller installiert und deinstalliert als bei einem ausgereiften System. Die Lösung besteht darin, die Registrierung sauber und defragmentiert zu halten.
Verwenden Sie zur Reinigung der Registrierung eines der vielen Tools, die es gibt. Für die Defragmentierung der Registrierung kann ich jedoch nicht genug NTREGOPT für die interne Hive-Optimierung und PageDefrag für die Defragmentierung physischer Dateien empfehlen .
Der Grund, warum MSI-Vorgänge in der Registrierung langsam werden, hängt damit zusammen, wie MSI sie verwendet. Windows Installer verwendet die Registrierung, um zu verfolgen, welche Produkte welche Komponenten installiert haben und an welchem Speicherort sie installiert wurden. Die ursprünglichen Installations-GUIDs werden im komprimierten Format verwendet. Informationen zu Installationen pro Computer finden Sie unter HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-18
, während Benutzerdaten auf einem Unter- HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\
und einem Schlüssel mit der Benutzer-SID angezeigt werden.
Beide Schlüssel können sehr groß sein und zahlreiche Unterschlüssel und Werte enthalten. Sie steuern Produkte, Komponenten und KeyPaths jeder installierten Anwendung. Alle diese Informationen müssen gelesen und verarbeitet werden, um eine ordnungsgemäße Deinstallation zu gewährleisten. Das Registrierungsformat listet jedoch die Schlüssel in alphabetischer Reihenfolge auf, sodass binäre Suchen möglich sind. Die Werte sind es aber nicht. Sie werden beim Erstellen gespeichert, sodass ein linearer Suchvorgang durchgeführt werden muss. Das verlangsamt die Leistung des Algorithmus.
Alles in allem ist MSI eine ziemlich vollständige und genaue Methode zur Installation und Deinstallation von Software. Es leidet jedoch unter seiner Registrierungsabhängigkeit. Das System ist hervorragend. Es ist die Windows-Registrierung, die vor langer Zeit überarbeitet werden sollte :)
Weiterführende Informationen:
In diesem Artikel wird erläutert, wie Sie MSI Debug einrichten, um eine eingehende Analyse der von MSI während der einzelnen Installations- oder Deinstallationsvorgänge ausgeführten Vorgänge zu erhalten . Oder, für weniger , aber immer noch wertvolle Informationen, diese ein , wie man activate Protokollierung.