Вопрос: Как извлечь файлы из пакета MSI?


У нас есть несколько старых патчей, из которых мы хотим получить файлы, но не хотим тратить время на их установку на машину.

Может ли кто-нибудь посоветовать извлечь файлы из установочного пакета MSI?


171
2018-02-14 12:41


Источник


Можете ли вы предоставить дополнительную информацию о том, какой именно инсталляционный пакет MSI вы хотите извлечь, данные вашей ОС и т. Д. - Firee


Ответы:


Сначала выполните доступ к командной строке с повышенными правами:

  1. Нажмите кнопку «Пуск».

  2. Нажмите «Все программы».

  3. Войдите в аксессуары.

  4. Щелкните правой кнопкой мыши Командная строка.

  5. Выберите Запуск от имени администратора.

  6. Когда появится сообщение UAC Prompt, нажмите «Продолжить».

После того, как у вас есть приведенная выше подсказка, введите следующее:

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

используя нужные места, чтобы заполнить вышеупомянутые пути к файлу. Пример:

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

194
2018-02-14 12:53



другой быстрый Google показал это: legroom.net/software/uniextract  Я бы предпочел использовать встроенные модули, но он выглядит как приемлемая утилита.
Насколько я понимаю (из msiexec /?), Эта команда фактически установит программу в это место; Я не думаю, что это то, что имел в виду первоначальный запросчик.
@ user6738 Я тестировал это, и он не устанавливает программное обеспечение. Программное обеспечение не найдено в приложении appwiz и не может быть удалено через msi и сообщает, что оно не установлено. Он действительно извлекает файлы из моего теста. - Adam Caviness
Я запустил это на заблокированном компьютере Win8.1 (рабочий ноутбук), и следует отметить, что Права администратора не нужны извлекать .msi файлы. - MattDMo
Отличный ответ! Я положил это в extractMSI.cmd файл: msiexec /a %1 /qb TARGETDIR="%~d1%~p1%~n1" || pause и добавили его в msi-файл с параметрами «Открыть с ...» - Tobias Kienzler


использование 7Zip,
Он распакует MSI, CAB, некоторые EXE и намного больше пакетов для вас. Для этого также не требуется привилегий администратора.

-РЕДАКТИРОВАТЬ-

И его с открытым исходным кодом, поэтому никакие ворчащие сообщения не попросят вас купить материал


74
2017-07-07 15:24



и после попытки, msiexec делает лучшую работу (сохраняя каталоги, правильно именования файлов и т. д.), - Michael Schubert
Кажется, это не работало для меня на win7 x64 с 32-битным 7-Zip. Есть ли особый способ (не перетаскивание), вы должны сказать ему, чтобы открыть файл? - ebyrob
В контекстном меню должна быть опция 7zip при щелчке правой кнопкой мыши по файлу - она ​​даст вам возможность извлекать файлы - Shekhar
Я вижу много вещей с восклицательным знаком впереди, а не с фактическими файлами. Я предполагаю, что либо что-то изменилось, либо у меня есть нечетный msi-файл. Я попробовал 7-Zip 9.20. - mlt
@MichaelSchubert - это зависит. Если вы используете не-Windows-машину, 7Zip - хороший вариант, так как версия командной строки доступна и для других систем. В зависимости от варианта использования, я бы сказал. - Per Lundberg


Есть также lessmsi который является полностью бесплатным и открытым исходным кодом.

Нет рекламных объявлений или сообщений с увязкой, они сохранят структуру каталогов и имена файлов правильно, сложный интерфейс командной строки, а также графический пользовательский интерфейс, который позволяет просматривать файлы, а также просматривать внутренние таблицы MSI и другие атрибуты MSI.


40
2017-12-06 10:18



Благодаря! Это помогло мне извлечь из MSI, который не будет извлекаться с помощью команды msiexec, говорящей, что «admin install не поддерживается» для <имя установочного пакета> - axk


Существует встроенная поддержка MSI для извлечения файлов (установка администратора)

MSI или установщик Windows имеет встроенную поддержку для этого - извлечение файлов из файла MSI. Это называется административная установка, Он в основном предназначен как способ создания точка сетевой установки из которого установка может быть запущена на многих целевых компьютерах. Это гарантирует, что исходные файлы всегда доступны для любых ремонтных операций.

Обратите внимание, что запуск установки администратора по сравнению с использованием zip-инструмента для извлечения файлов очень отличается! Последний не будет настраивать формат носителя таблицы мультимедиа так, чтобы пакет был настроен на использование внешних исходных файлов - это правильный путь. Всегда предпочитайте запускать фактическую установку администратора над любыми извлечениями взломанного zip. Что касается сжатия, то на самом деле три различных алгоритма сжатия используется для файлов кабины внутри формата файла MSI: MSZip, LZX и Хранение (несжатое). Все они обрабатываются правильно, выполняя установку администратора.


У администраторов есть много применений

Рекомендуется прочитать больше об установках администратора, поскольку это полезная концепция, и я написал сообщение о stackoverflow: Какова цель административной установки, инициированной с помощью msiexec / a?,

По сути, установка администратора важна для:

  • Извлечение и проверка файлов установщика
  • Например, развертывание через программное обеспечение для управления системами SCCM (избегает огромных кэшированных файлов MSI в C: \ Windows \ Installer, поскольку файлы извлекаются из внутренних кабин)
  • Переупаковка корпоративных приложений
  • Ремонт, модификация и самообслуживание
  • Патчи и обновления
  • Реклама MSI ("запустить из источника" особенность)
  • Ряд других мелких деталей

Пожалуйста, прочитайте сообщение stackoverflow, указанное выше для получения более подробной информации. Это довольно важная концепция для системные администраторы, упаковщики приложений, разработчики, руководители релизов, а также даже средний пользователь посмотреть, что они устанавливают и т. д. ...


Администрирование, практическое руководство

Вы можете выполнить администрирование несколькими способами в зависимости от способа доставки установщика. По сути, он либо поставляется как Файл MSI или завернутый в Файл setup.exe,

Запустите эти команды из повышенная командная строка, и следуйте инструкциям в графическом интерфейсе для интерактивных команд:

  • Файлы MSI:

    msiexec /a File.msi
    

    это запустить GUI, вы можете сделать это тихо:

    msiexec /a File.msi TARGETDIR=C:\MyInstallPoint /qn
    
  • Файлы setup.exe:

    setup.exe /a
    

setup.exe файл также может быть устаревшая настройка стиля (не MSI) или страшный Installscript MSI тип файла - хорошо известный тип проекта Installshield с гибридным нестандартным стандартом MSI. По сути, это MSI с пользовательским, более продвинутым графическим интерфейсом, но он также полон ошибок.

Для устаревшие файлы setup.exe  / а ничего не сделают, но вы можете попробовать / extract_all: переключатель [path] как объяснено в это pdf, Это хорошая ссылка для бесшумной установки и других вещей. Другой ресурс этот список параметров командной строки Installshield setup.exe,

Файлы исправлений MSI (* .MSP) может быть применяется для изображения администратора для правильного извлечения его файлов. 7Zip также сможет извлекать файлы, но они не будут правильно отформатированы.

Наконец, если никакой другой способ не работает, вы можете получить извлеченные файлы настроек, очистив временную папку в своей системе, запустив setup.exe в интерактивном режиме, а затем дождитесь появления первого диалогового окна. В большинстве случаев установщик извлечет кучу файлов в временную папку. Иногда файлы являются обычными, иногда в формате CAB, но Winzip, 7Zip или даже Universal Extractor (не тестировали этот продукт) - могут открыть их.


19
2017-07-25 21:28



Также см. Этот ответ: superuser.com/questions/307678/... - Stein Åsmul
Тот же пост в stackoverflow: stackoverflow.com/a/24987512/129130 (Я должен удалить один, но оба они сохранены, и они были недавно объединены). - Stein Åsmul


Я бы посоветовал UniExtract для того, чтобы сделать решение Neice еще проще. Он делает то же самое, просто более автоматизирован и позволяет несколько методов для извлечения файлов MSI, а не только административную установку (как использует его решение).

UniExtract также может обрабатывать exe, упакованные с помощью WISE или InstallShield, а также множество других сжатых форматов. О, и это бесплатно.

Universal Extractor - это программа для   точно, что он говорит: извлечь файлы   из любого типа архива, будь то   простой zip-файл, установка   программы или даже установщика Windows   (.msi).


8
2018-02-18 05:08





Если вы установите Total Commander, Eсть плагин для открытия и извлечения файлов MSI,


3
2018-02-14 13:02



Правильно. Но, к сожалению, только для 32-битных TC - Timores


вы можете использовать Orca это приложение является частью Platform SDK, но вы также можете скачать его здесь http://astebner.sts.winisp.net/Tools/Orca.zip


1
2018-02-14 12:54



Orca лучше для извлечения метаданных, таких как файлы, папки и таблицы реестра. Как правило, это не очень полезно для извлечения фактических файлов (совершенно бесполезно, если файлы не хранятся в бинарной таблице). - Synetech


Добавить PeaZip к списку. Работал как чемпион


1
2017-07-21 20:30



Пожалуйста прочти Как я рекомендую программное обеспечение для некоторых советов о том, как вам следует рекомендовать программное обеспечение. По крайней мере, вы должны предоставить не только ссылку, например некоторую дополнительную информацию о самом программном обеспечении, например, как ее можно использовать для решения проблемы в вопросе. - DavidPostill♦


Вы также можете попробовать Экстрактор MSI Хит Стюарт,


0
2018-02-18 06:04