poniedziałek, 10 sierpnia 2009

Jak wypakować zawartość pliku MSI? [PL]

Czy zdarzyło wam się, że trzeba było zajrzeć co zawiera instalator typu MSI, bez instalowania danego produktu? Mnie tak, a rozwiązanie okazało się bardzo proste. Wiem że to co za chwilę napiszę znajduje się na innych blogach, ale aby ułatwić moim czytelnikom (i sobie ;) ) możliwość skorzystania z tego sposobu, postanowiłem podać tą receptę również na tym blogu.

Do wypakowania plików zawartych w pliku .msi wystarczy w linii komend wpisać:

msiexec /a Path_to_MSI_file /qb TARGETDIR=Extraction_directory

Na przykład, gdy chcemy wypakować pliki z c:\myinstaller.msi do katalogu c:\myinstaller_content (katalog musi istnieć przed wykonaniem komendy), należy wpisać:

msiexec /a c:\myinstaller.msi /qb TARGETDIR=c:\myinstaller_content

Proste prawda?

P.S. wiem że są również inne narzędzia np. Less MSIérables, ale ponieważ to proste rozwiązanie wykonuje akurat to, co potrzebuję, więc po co sięgać po bardziej skompilowane rozwiązania?

8 komentarzy:

  1. dzięki działa 100% :)

    OdpowiedzUsuń
  2. Nie działa windows vista x32 :(

    OdpowiedzUsuń
    Odpowiedzi
    1. Nie mam visty, żeby sprawdzić, ale na Win 7 działa - więc byłbym bardzo zdziwiony, gdyby tylko na Vista nie działało. Spróbuj uruchomić na prawach administratora, może UAC przeszkodził?

      Usuń
    2. Na XP x32 działa. Albo na vista źle wpisuję albo nie działa.

      Usuń
  3. nie wiesz jak wypakowac pliki z .exe, gdzie w .exe sa pliki pakowane w *cab / *hdr
    ?
    Po wsadzeniu wnotatnik widac wpisy ze uzyty byl
    IS4, ale nie da sie tego wypakowac.
    Chodzi mi o wypakowanie sterownika, bez instalacji programu, ktory jest tylko po to, by mnie wkurzac. Moge podeslac plik exe.

    OdpowiedzUsuń
  4. niestety nie wiem jak to zrobić (ale nigdy tego nie szukalem), moze jakby Ci sie udało to daj znać w komentarzu jaki jest na to sposób

    OdpowiedzUsuń
  5. Czy można spakować ponownie do msi? Przykładowo podmieniam jeden plik exe i chciałbym mieć znów plik msi.

    OdpowiedzUsuń
    Odpowiedzi
    1. To już nie takie proste. Pewnie można przy pomocy narzędzi developerskich (np. w starym Visual Studio coś było, lub coś innego od Install Shield'a) stworzyć nowe msi, ale potencjalnie tracimy wszystkie dodatkowe akcje lub ustawienia niestandardowe.

      Usuń

Posty powiązane / Related posts