Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   MSI Installationspaket bearbeiten mit Orca - Datei tauschen (https://www.delphipraxis.net/114586-msi-installationspaket-bearbeiten-mit-orca-datei-tauschen.html)

Zacherl 27. Mai 2008 21:39


MSI Installationspaket bearbeiten mit Orca - Datei tauschen
 
Hey,

ich muss eine einzelne Datei innerhalb eines MSI Installationspaketes modifizieren. Die Dateigröße wird nicht tangiert, lediglich den Inhalt der Datei muss ich geringfügig modifizieren. Über das von Microsoft bereitgestellte Tool "Orca" war es mir auch schon möglich die MSI Datei zu editieren, allerdings habe ich keine Option gefunden, mit der ich den Inhalt einer einzelnen Datei versändern könnte.
Im HEX Editor sind auch keine Teile der Datei innerhalb der MSI Datei zu finden, da die Einzeldateien vermutlich komprimiert wurden.

Gibt es da eine Möglichkeit irgendwie zu tricksen?

Gruß

generic 28. Mai 2008 08:38

Re: MSI Installationspaket bearbeiten mit Orca - Datei tausc
 
du brauchst nur die passende tabelle öffnen.
dann in das feld "data" klicken. dort sollte sich ein dialog öffnen ("edit bin. stream"), welcher dich fragt "stream laden" / "stream speichern"

deine daten liegen in der binary tabelle oder in der cabs tabelle.

die dateien sind meistens in eine cab gespeichert.

MathiasSimmack 28. Mai 2008 09:26

Re: MSI Installationspaket bearbeiten mit Orca - Datei tausc
 
Bzw die CAB-Datei wird dann zusätzlich in die MSI-Datei integriert. Bei den üblichen Windows-Tools (SDK, usw.) liegen IMHO Skripte bei, mit denen man die MSI-Datei noch genauer untersuchen kann. Ob jetzt ein Skript zum Entpacken und Bearbeiten des CAB-"Streams" dabei ist, weiß ich leider nicht (mehr). :oops:

Zacherl 28. Mai 2008 14:10

Re: MSI Installationspaket bearbeiten mit Orca - Datei tausc
 
Erstmal Danke für eure Hilfe, allerdings gibt es ein weiteres Problem. Die Datei, die ich ersetzen will taucht zwar in der FILE, nicht aber in der BINARY Table auf. Eine CABS Tabelle gibt es bei diesem Setup nicht.

Gibt es einen weiteren Weg irgendwie an die Datei zu gelangen?

MathiasSimmack 28. Mai 2008 14:42

Re: MSI Installationspaket bearbeiten mit Orca - Datei tausc
 
Es gibt keine CAB-Tabelle im Sinn des Wortes.

In der "Binary"-Tabelle sind in der Regel Icons, Headergrafiken, kleine Tools o.ä. gespeichert, die in irgendeiner Form vom Setup benötigt werden. Die zu installierenden Dateien werden idR in eine CAB-Datei gepackt und können in die MSI integriert bzw. als Stream angehangen werden. Das scheint bei dir der Fall zu sein.

Warum machst du nicht einfach einen Patch? Das ist doch der große Vorteil von MSI-Paketen. Du lässt die Grundversion installieren und erzeugst dann auf der Basis der Originaldatei und der geänderten Version ein MSP-Paket; quasi eine Mini-MSI (salopp gesagt), die die vorhandene Installation erkennt und die Dateien anpassen kann.

Zacherl 28. Mai 2008 15:16

Re: MSI Installationspaket bearbeiten mit Orca - Datei tausc
 
Habe es schließlich hinbekommen. Ich habe die MSI Datei nach einem CAB Header gescannt und alle Daten inklusive des Headers in eine neue Datei per Hex Editor kopiert. Die dadurch entstandene CAB Datei konnte ich entpacken und die Zieldatei anpassen. Das ganze habe ich dann wieder in die CAB Datei zurückgeschrieben und alle Daten innerhalb der MSI Datei vom CAB Header an mit Denen der neuen CAB Datei überschrieben.

Das es geklappt hat wundert mich allerdings selber :P


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:23 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz