Erkennung von Hersteller-MSI-Setups

<< Click to Display Table of Contents >>

RayPack > 8.0 > User Guide > PackBot > Verarbeitung und Übersicht 

Erkennung von Hersteller-MSI-Setups

PackBot erkennt Hersteller-MSI-Installationen automatisch. Viele Setups sind in einer einzelnen Container-.exe-Datei vorverpackt, die lediglich als Wrapper fungiert und die eigentliche Windows Installer-Datenbank an einem temporären Speicherort ausführt. Wenn dies der Fall ist, ist eine Neupaketierung im MSI-Format normalerweise keine gute Wahl, da sie die Kompatibilität und Upgrade-Möglichkeiten älterer Herstellerpakete beeinträchtigt. In den meisten Fällen ist der empfohlene Ansatz die Erstellung einer Windows Installer-Transformation.

 

PackBot löst dieses Problem auf zwei Arten, die automatisch im Hintergrund ohne Benutzereingriff funktionieren, wenn eine Konvertierung in das RCP- oder MSI-Format angefordert wird.

 

Alle Konvertierungen (ausgenommen App-V 4.6/5.x mit Sequencer)

Für alle Konvertierungen (außer derjenigen, die den Sequencer erfordert) überwacht RayPack die Hintergrundinstallationen und erkennt Windows Installer-Sitzungen. Sollte während der Neupaketierung ein MSI-Setup gestartet werden (oft implizit, z. B. durch einen ausführbaren Wrapper gestartet), erkennt RayPack die Installation und ihre Quellen. Sobald die Neupaketierung abgeschlossen ist, werden diese wesentlichen Dateien kopiert und neben dem eigentlichen Projekt gespeichert. Beim Neupaketieren in das RCP-Format wird beispielsweise ein ähnlicher Inhalt wie der folgende erstellt:

rcprepack

 

Neben den Standardordnern enthält <ProjectName>_setup alle originalen Hersteller-MSI-Installationen und deren Protokolldateien, die während der Neupaketierung aufgezeichnet wurden.

 

papercliper

Hinweis:

Bei der Konvertierung in das RCP-Format können Hersteller-Installationen über den Bildschirm Allgemein > Originalsetups überprüft werden.

 

Konvertierung in MSI

Wenn ein Projekt in das MSI-Format konvertiert wird, wird eine zusätzliche Logik angewendet, wenn mindestens ein Windows Installer als Teil der Installation ausgeführt wird. Die tatsächliche Aktion von PackBot hängt von den Hersteller-MSI-Einstellungen ab. Es gibt zwei Hauptaktionen, die mit einem originalen Hersteller-MSI durchgeführt werden können:

 

1.Das originale MSI ignorieren und ein neues neupaketiertes MSI erstellen.

2.Eine Transformation erstellen, die das Hersteller-MSI modifiziert.

 

Beide haben leicht unterschiedliche Anwendungsfälle.

 

Das originale MSI sollte ignoriert und eine neue Kopie erstellt werden, wenn das neu zu paketierende Setup ein sogenanntes „Wrapper-MSI" ist, das selbst keine Aktion ausführt, sondern lediglich als Wrapper/Host dient. In diesem Fall ist die Erstellung eines neupaketieren MSI meist die bessere Option, obwohl sie den Best Practices widerspricht, die die Neupaketierung von Installer-Datenbanken vermeiden sollten.

Ein MST sollte erstellt werden, wenn interne Strukturen und Upgrade-Möglichkeiten erhalten bleiben sollen. Durch das Hinzufügen geänderter Inhalte nur über eine relativ kleine MST-Datei und unterstützende Dateien bleiben diese unberührt.

 

Da die Anwendungsfälle unterschiedlich sind und vor dem Start eines Setups nicht immer vorhersehbar sind, kombiniert RayPack sie standardmäßig und liefert beide Optionen. Dies ist beispielsweise das Ergebnis der Neupaketierung von Adobe Reader, das als ausführbares Setup vertrieben wird, aber über ein „verstecktes" MSI installiert wird:

 

acrobatrepack

 

Der Ordner Repackaged enthält eine neue Kopie des neupaketieren MSI, und im Originalordner befinden sich eine Transformation und CAB-Dateien mit zusätzlichen Quelldateien. Wenn eine nicht standardmäßige Einstellung gewählt wurde, um entweder nur in MSI oder MST zu konvertieren, werden die Dateien direkt im Projektordner ohne zusätzliche Unterordner gespeichert.

 

Natürlich ist in diesem Fall die Wahl von MST als Ergebnis die richtige Entscheidung – auf diese Weise kann die Upgrade-Logik eines Produkts, das tatsächlich als natives Windows Installer-Setup installiert wird, erhalten bleiben.