it-swarm.com.de

Wie extrahiere ich Dateien aus einem MSI-Paket?

Wir haben einige alte Patches, von denen wir die Dateien erhalten möchten, möchten aber nicht die Zeit damit verbringen, sie auf einem Computer zu installieren.

Kann jemand eine Möglichkeit empfehlen, Dateien aus einem MSI-Installationspaket zu extrahieren?

184
Martin

Greifen Sie zunächst auf eine Eingabeaufforderung mit erhöhten Rechten zu, um dies zu tun:

  1. Klicken Sie auf die Schaltfläche Start.

  2. Klicken Sie auf Alle Programme.

  3. Gehen Sie in Zubehör.

  4. Klicken Sie mit der rechten Maustaste auf Eingabeaufforderung.

  5. Wählen Sie Als Administrator ausführen.

  6. Wenn die UAC-Eingabeaufforderung angezeigt wird, klicken Sie auf Weiter.

Sobald Sie Ihre Eingabeaufforderung mit erhöhten Rechten haben, geben Sie Folgendes ein:

msiexec /a drive:\filepath\to\MSI\file /qb TARGETDIR=drive:\filepath\to\target\folder

verwenden Sie die gewünschten Positionen, um die oben genannten Dateipfade auszufüllen. Beispiel:

msiexec /a c:\testfile.msi /qb TARGETDIR=c:\temp\test
207
neoice

Verwenden Sie 7Zip .
Es wird MSI, CAB, einige EXE-Dateien und viel mehr Pakete für Sie entpacken. Es sind keine Administratorrechte erforderlich, um dies auszuführen.

-BEARBEITEN-

Und es ist Open Source, also keine nervenden Botschaften, die dich bitten, das Zeug zu kaufen

74
Shekhar

Es gibt auch lessmsi , das völlig kostenlos und Open Source ist.

Es gibt keine Werbung oder nervende Nachrichten, es wird die Verzeichnisstruktur und Dateinamen korrekt beibehalten, es verfügt über eine ausgefeilte Befehlszeilenschnittstelle sowie eine grafische Benutzeroberfläche, die das Durchsuchen der Dateien sowie das Anzeigen von internen MSI-Tabellen und -Dateien ermöglicht andere MSI-Attribute.

45
Scott Willeke

Es gibt eine integrierte MSI-Unterstützung für die Dateiextraktion (Admin-Installation)

MSIoder Windows Installer hat eine eingebaute Unterstützung für dieses- Extrahieren von Dateien aus einer MSI-Datei. Dies wird als administrative Installation bezeichnet. Grundsätzlich ist dies beabsichtigt Als Methode zum Erstellen von ein Netzwerkinstallationspunkt, von dem aus die Installation auf vielen Zielcomputern ausgeführt werden kann. Dadurch wird sichergestellt, dass die Quelldateien für alle Reparaturvorgänge immer verfügbar sind.

Beachten Sie, dass die Ausführung einer Administratorinstallation im Vergleich zur Verwendung eines Zip-Tools zum Extrahieren der Dateien sehr unterschiedlich ist!)Letzteres passt das Medienlayout der Medientabelle nicht so an, dass das Paket externe Quelldateien verwendet Richtige Vorgehensweise: Führen Sie die eigentliche Administratorinstallation immer über alle hackigen Zip-Extraktionen aus. Für die Komprimierung werden tatsächlich drei verschiedene Komprimierungsalgorithmen für die CAB-Dateien im MSI-Dateiformat verwendet: MSZip, LZX , und Speichern (unkomprimiert): Alle diese Vorgänge werden bei einer Administratorinstallation ordnungsgemäß ausgeführt.


Admin-Installationen haben viele Verwendungszwecke

Es wird empfohlen, mehr über Admin-Installationen zu lesen, da dies ein nützliches Konzept ist. Außerdem habe ich einen Beitrag zum Stackoverflow geschrieben: Was ist der Zweck der administrativen Installation, die mit msiexec/a initiiert wurde? .

Im Wesentlichen ist die Admin-Installation wichtig für:

  • Extrahieren und Überprüfen der Installationsdateien
  • Bereitstellung zum Beispiel über Systemverwaltungssoftware SCCM (vermeidet große zwischengespeicherte MSI-Dateien in C:\Windows\Installer, da Dateien aus internen Kabinen extrahiert werden)
  • Umpacken von Unternehmensanwendungen
  • Reparatur, Änderung und Selbstreparatur
  • Patchen & Upgrades
  • MSI-Werbung (die "run from source" -Funktion)
  • Eine Reihe weiterer kleinerer Details

Bitte lesen Sie den oben verlinkten Stackoverflow-Beitrag für weitere Details. Es ist ein ziemlich wichtiges Konzept für Systemadministratoren, Anwendungspaketierer, Setup-Entwickler, Release-Managerund sogar der durchschnittliche Benutzer), um zu sehen, was sie installieren usw...


Admin-Installation, praktische Anleitung

Sie können eine Administrator-Installation auf verschiedene Arten durchführenje nachdem, wie das Installationsprogramm ausgeliefert wird. Grundsätzlich wird es entweder als MSI-Dateioder in eine setup.exe-Dateieingeschlossen) ausgeliefert.

Führen Sie diese Befehle von einer Eingabeaufforderung mit erhöhten Rechtenaus und befolgen Sie die Anweisungen in der GUI für die interaktiven Befehlszeilen:

  • MSI-Dateien:

    msiexec /a File.msi
    

    das läuft mit GUI, Sie können es auch im Hintergrund tun:

    msiexec /a File.msi TARGETDIR=C:\MyInstallPoint /qn
    
  • setup.exe files:

    setup.exe /a
    

Eine setup.exeDatei kann auch eine Legacy Style Setup (Nicht-MSI)oder der gefürchtete Installscript MSIDateityp sein - ein bekannter fehlerhafter Installshield-Projekttyp mit hybriden Nicht-Standards- Kompatibles MSI-Format: Es handelt sich im Wesentlichen um ein MSI mit einer benutzerdefinierten, fortgeschritteneren Benutzeroberfläche, aber es ist auch voller Fehler.

Für legacy setup.exe filesdas / awird nichts tun, aber Sie können den / extract_all: [path] switchversuchen, wie in this pdf erklärt) Es ist eine gute Referenz für die unbeaufsichtigte Installation und andere Dinge. Eine weitere Ressource ist diese Liste der Befehlszeilenparameter von Installshield setup.exe .

MSI-Patch-Dateien(* .MSP) können auf ein Administrator-Image angewendet werden um die Dateien ordnungsgemäß zu extrahieren. 7Zip kann die Dateien ebenfalls extrahieren, sie werden jedoch nicht ordnungsgemäß formatiert.

Wenn keine andere Möglichkeit besteht, können Sie an extrahierte Setup-Dateien gelangen, indem Sie den temporären Ordner auf Ihrem System löschen, die Datei setup.exe interaktiv starten und dann warten, bis das erste Dialogfeld angezeigt wird. In den meisten Fällen hat das Installationsprogramm eine Reihe von Dateien in einen temporären Ordner extrahiert. Manchmal sind die Dateien normal, manchmal im CAB-Format, aber Winzip, 7Zip oder sogar Universal Extractor (haben dieses Produkt nicht getestet) können diese möglicherweise öffnen.

23
Stein Åsmul

Ich würde UniExtract empfehlen, um die Lösung von neoice noch einfacher zu machen. Es funktioniert genauso, ist jedoch automatisierter und ermöglicht mehrere Methoden zum Extrahieren von MSI-Dateien, nicht nur eine Administratorinstallation (wie von seiner Lösung verwendet).

UniExtract kann auch mit WISE oder InstallShield gepackte EXE-Dateien sowie eine Vielzahl anderer komprimierter Formate verarbeiten. Oh, und es ist kostenlos.

Universal Extractor ist ein Programm, das genau das tut, was es sagt: Dateien aus beliebigen Archiven extrahieren, sei es eine einfache Zip-Datei, ein Installationsprogramm oder sogar ein Windows Installer-Paket (.msi).

8
Mick
3
Manuel Ferreria

lessmsiist hier wirklich die beste Wahl, da Sie genau auswählen können, welche Dateien extrahiert werden sollen und wohin sie gehen sollen. Darüber hinaus kann es einfach mit dem apt-get-Framework für Windows namens Choclatey installiert werden. Die oben genannte lessmsi-Website wurde verschoben und kann auch unter GitHub gefunden/heruntergeladen werden. Darüber hinaus finden Sie HIER viele andere Tools und MSI-bezogene Informationen. : (Sorry, ich kann nicht mehr als 2 Links posten!)

1
not2qubit

Fügen Sie der Liste PeaZip hinzu. Arbeitete wie ein Champion

1
JOpuckman

sie können Orca verwenden. Diese App ist Teil des Platform SDK. Sie können sie jedoch auch hier herunterladen. http://astebner.sts.winisp.net/Tools/Orca.Zip

1
michael

Einfach herunterladen Universal Extractor . Es extrahiert alle Arten von Dateien, einschließlich .exe, .msi, .rar, .Zip, .kgb und mehr.

0
vivek

Sie können auch versuchen Heath Stewarts MSI Extractor .

0
jkchong

Installshield .exe-Setups (wie Sie sie nennen) gibt es in vielen Varianten, und es ist im Allgemeinen möglich, Dateien daraus zu extrahieren.

Eine Installationsdatei für Installshield kann alte, ältere Nicht-MSI-Installationsprogramme oder neue MSI-Installationsprogramme enthalten.

Wenn die Datei setup.exe ein MSI-Setup umschließt, können Sie setup.exe/a angeben, und die Administratorinstallation von MSI wird ausgeführt, sodass Sie den Speicherort für die Dateien angeben und ausgeben können.

Wenn es sich bei der setup.exe um eine ältere Installation von Installshield handelt, unterstützt sie möglicherweise das Extrahieren von Dateien über den Schalter/extract_all: [path] . Siehe hier (aktualisiert Juli 2011, Acresso-Link war nicht mehr gültig, erneut aktualisiert Februar 2014 - jetzt auf itninja verweisend).

Beachten Sie auch, dass eine andere Möglichkeit , um an diese Dateien zu gelangen, darin besteht, den temporären Ordner auf Ihrem System zu bereinigen, die Datei setup.exe interaktiv zu starten und dann darauf zu warten, dass das erste Dialogfeld angezeigt wird. In den meisten Fällen hat das Installationsprogramm eine Reihe von Dateien in einen temporären Ordner extrahiert. Manchmal sind die Dateien normal, manchmal im CAB-Format, aber Winzip, 7Zip oder sogar Universal Extractor (haben dieses Produkt nicht getestet) können diese möglicherweise öffnen.

0
Stein Åsmul

Versuchen Sie, MSITOOLS.EXE auf InstallSite für einen GUI-Extraktor zu hosten.

0
Andrew Guest