2009-02-14 12:41:06 +0000 2009-02-14 12:41:06 +0000
196
196

Como posso extrair ficheiros de um pacote MSI?

Temos alguns patches antigos dos quais queremos obter os ficheiros mas não queremos passar o tempo a instalá-los numa máquina.

Alguém pode aconselhar uma forma de extrair ficheiros de um pacote de instalação MSI?

Respostas (10)

74
74
74
2011-07-07 15:24:04 +0000

Use 7Zip . Irá desempacotar MSI , CAB, alguns EXE, e muito mais pacotes para si. Também não há necessidade de privilégios de administrador para executar isto.

-EDIT-

E o seu código aberto, por isso nada de mensagens incómodas a pedir-lhe para comprar o material

46
46
46
2009-12-06 10:18:31 +0000

Há também lessmsi que é completamente gratuito e de código aberto.

Não há anúncios ou mensagens incómodas, irá preservar correctamente a estrutura de directórios e nomes de ficheiros, tem uma sofisticada interface de linha de comandos , bem como uma interface gráfica do utilizador que permite navegar pelos ficheiros, bem como ver tabelas MSI internas e outros atributos MSI.

25
25
25
2014-07-25 21:28:53 +0000

Existe suporte integrado MSI para extracção de ficheiros (admin install)

MSI ou Windows Installer ** tem suporte integrado para isto*** - a extracção de ficheiros de um ficheiro MSI. Isto é chamado uma instalação administrativa . Basicamente pretende ser uma forma de criar um ponto de instalação de rede* a partir do qual a instalação pode ser executada em muitos computadores alvo. Isto assegura que os ficheiros fonte estão sempre disponíveis para quaisquer operações de reparação.

Nota que executar uma instalação administrativa versus utilizar uma ferramenta zip para extrair os ficheiros é muito diferente! Esta última não ajustará a disposição da media da tabela de media para que o pacote seja configurado para utilizar ficheiros fonte externos - que é a forma correcta. Prefira sempre executar a instalação do administrador em vez de qualquer extracção hacky de zip. Quanto à compressão, existem de facto três algoritmos de compressão diferentes utilizados para os ficheiros da cabina dentro do formato de ficheiro MSI: MSZip, LZX, e Armazenamento (não comprimido). Todos estes são tratados correctamente através de uma instalação de admin.


Admin-installs têm muitos usos

É recomendado ler mais sobre admin-installs uma vez que é um conceito útil, e eu escrevi um post sobre o stackoverflow: Qual é o propósito da instalação administrativa iniciada usando msiexec /a? .

Na essência a instalação administrativa é importante para:

  • Extrair e inspeccionar os ficheiros do instalador
  • Implementação através de software de gestão de sistemas por exemplo SCCM (evita ficheiros MSI enormes, em cache, em C: \
  • Reembalagem de aplicações empresariais
  • Operações de reparação, modificação e auto-reparação
  • Patching & upgrades
  • Publicidade MSI (a funcionalidade “ run from source”)
  • Uma série de outros pequenos detalhes

  • Por favor, leia o post de stackoverflow ligado acima para mais detalhes. É um conceito bastante importante para ** administradores de sistemas*** , construtores de aplicações* , desenvolvedores de aplicações* , gerentes de lançamento , e até mesmo o utilizador médio* para ver o que estão a instalar, etc…


Admin-install, how-to prático

Pode efectuar uma instalação administrativa de algumas formas diferentes* dependendo de como o instalador é entregue. Essencialmente é entregue como um ficheiroMSI ou embrulhado num ficheirosetup.exe.

Execute estes comandos a partir de um alerta de comando levantado , e siga as instruções no GUI para as linhas de comando interactivas:

  • ficheirosMSI :

  • setup. exe files* :

A setup.exe* pode também ser um ficheiro de configuração do estilo legacy style setup (non-MSI) ou o temido Installscript MSI tipo de ficheiro - um bem conhecido tipo de projecto buggy Installshield com formato híbrido MSI não compatível com as normas. É essencialmente um MSI com uma GUI personalizada e mais avançada, mas também está cheio de bugs.

Para os ficheiros legacy setup.exe o /a* não fará nada, mas pode tentar o /extract_all:[path] switch como explicado em this pdf . É uma boa referência para a instalação silenciosa e outras coisas também. Outro recurso é esta lista de parâmetros de linha de comando Installshield setup.exe .

MSI patch files* (*.MSP) pode ser aplicado a uma imagem admin para extrair corretamente seus arquivos. 7Zip também será capaz de extrair os arquivos, mas eles não serão formatados corretamente.

Finalmente, se nenhuma outra maneira funcionar, você pode obter arquivos de configuração extraídos limpando a pasta temp no seu sistema, iniciar o arquivo setup.exe interativamente e então aguardar o primeiro diálogo aparecer. Na maioria dos casos, o instalador terá extraído um monte de arquivos para uma pasta temp. Algumas vezes os arquivos são simples, outras vezes no formato CAB, mas Winzip, 7Zip ou mesmo o Extractor Universal (não testou este produto) - pode ser capaz de abri-los.

8
8
8
2009-02-18 05:08:15 +0000

Recomendo UniExtract para tornar a solução neoice ainda mais fácil. Ele faz a mesma coisa, apenas é mais automatizado e permite vários métodos de extração de arquivos MSI, não apenas uma instalação administrativa (como sua solução está usando).

UniExtract também pode lidar com os pacotes do exe com WISE ou InstallShield, bem como uma variedade de outros formatos compactados. E é grátis.

Universal Extractor é um programa que faz exatamente o que diz: extrair arquivos de qualquer tipo de arquivo, seja um simples arquivo zip, um programa de instalação ou até mesmo um pacote Windows Installer (.msi).

3
3
3
2009-02-14 13:02:14 +0000

Se você instalar Comandante Total , há um plugin para abrir e extrair arquivos MSI .

1
1
1
2014-02-06 21:04:27 +0000

lessmsi* é realmente a melhor escolha aqui, pois oferece-lhe a possibilidade de escolher exactamente quais os ficheiros a extrair e para onde devem ir. Além disso, pode ser facilmente instalado utilizando a estrutura apt-get para Windows, chamada Choclatey. O site lessmsi acima tem moved e também pode ser encontrado/baixado em GitHub . Além disso, você pode encontrar muitas outras ferramentas e informações relacionadas ao MSI AQUI. (Desculpe, não posso colocar mais do que 2 links!)

1
1
1
2015-07-21 20:30:21 +0000

Adicione PeaZip à lista. Funcionou como um campeão

1
1
1
2009-02-14 12:54:36 +0000

pode utilizar Orca esta aplicação faz parte da plataforma SDK, mas também pode fazer o download a partir daqui http://astebner.sts.winisp.net/Tools/Orca.zip

0
0
0
2012-01-11 07:26:40 +0000

Basta descarregar Extractor Universal . Extrai todos os tipos de ficheiros, incluindo .exe,.msi,.rar,.zip,.kgb e muito mais.

0
0
0
2009-06-30 03:08:07 +0000

As configurações do Installshield .exe (como você as chama) vêm em muitos sabores, e geralmente é possível extrair arquivos deles.

Um Installshield setup.exe pode conter instaladores antigos, antigos não-msi ou novos instaladores msi.

Se a configuração. exe estiver a envolver uma configuração MSI, pode especificar setup.exe /a* e a instalação administrativa do MSI irá correr, permitindo-lhe especificar e local de saída para os ficheiros.

Se o setup.exe for uma configuração Installshield antiga, pode ou não suportar a extracção de ficheiros através da chave /extract_all:[path] switch*. Por favor veja aqui (actualizado em Julho de 2011, o link Acresso não era mais válido, actualizado novamente em Fevereiro de 2014 - apontando agora para itninja).

Note também que outra forma* de obter estes ficheiros é limpar a pasta temp no seu sistema, iniciar o setup.exe interactivamente e depois esperar que a primeira caixa de diálogo apareça. Na maioria dos casos, o instalador terá extraído um monte de ficheiros para uma pasta temp. Algumas vezes os arquivos são simples, outras vezes no formato CAB, mas Winzip, 7Zip ou mesmo o Extractor Universal (não testou este produto) - pode ser capaz de abri-los.