Temos alguns patches antigos dos quais queremos obter os arquivos, mas não queremos gastar tempo instalando-os em uma máquina.
Alguém pode aconselhar uma maneira de extrair arquivos de um pacote de instalação MSI?
Temos alguns patches antigos dos quais queremos obter os arquivos, mas não queremos gastar tempo instalando-os em uma máquina.
Alguém pode aconselhar uma maneira de extrair arquivos de um pacote de instalação MSI?
Respostas:
Primeiro, acesse um prompt de comando elevado, para fazer isso:
Clique no botão Iniciar.
Clique em todos os programas.
Vá para Acessórios.
Clique com o botão direito do mouse em Prompt de Comando.
Selecione Executar como administrador.
Quando o prompt do UAC aparecer, clique em Continuar.
Depois de ter seu prompt de comando elevado, insira o seguinte:
msiexec /a drive:\filepath\to\MSI\file /qb TARGETDIR=drive:\filepath\to\target\folder
usando os locais desejados para preencher os caminhos de arquivo mencionados acima. Exemplo:
msiexec /a c:\testfile.msi /qb TARGETDIR=c:\temp\test
.msi
arquivos.
extractMSI.cmd
arquivo: msiexec /a %1 /qb TARGETDIR="%~d1%~p1%~n1" || pause
e acrescentou que a "Abrir com ..." opções da-arquivo MSI
Use 7Zip .
Ele irá descompactar MSI, CAB, alguns EXE e muito mais pacotes para você. Não há necessidade de privilégios de administrador para executar isso também.
-EDITAR-
E seu código aberto, portanto, nenhuma mensagem incômoda implorando para você comprar as coisas
Há também lessmsi, que é totalmente gratuito e de código aberto.
Não há anúncios ou mensagens irritantes, ele preservará a estrutura do diretório e os nomes dos arquivos corretamente, possui uma sofisticada interface de linha de comando e uma interface gráfica do usuário que permite navegar pelos arquivos, além de exibir tabelas MSI internas e outros atributos MSI.
O MSI ou o Windows Installer tem suporte interno para isso - a extração de arquivos de um arquivo MSI. Isso é chamado de instalação administrativa . Pretende-se basicamente como uma maneira de criar um ponto de instalação em rede a partir do qual a instalação pode ser executada em muitos computadores de destino. Isso garante que os arquivos de origem estejam sempre disponíveis para qualquer operação de reparo.
Observe que executar uma instalação administrativa versus usar uma ferramenta zip para extrair os arquivos é muito diferente! O último não ajustará o layout de mídia da tabela de mídia para que o pacote seja configurado para usar arquivos de origem externos - que é a maneira correta. Sempre prefira executar a instalação real do administrador em vez de qualquer extração de hackers. Quanto à compactação, na verdade existem três algoritmos de compactação diferentes usados para os arquivos cab dentro do formato de arquivo MSI: MSZip, LZX e Storing (descompactado). Tudo isso é tratado corretamente, fazendo uma instalação de administrador.
Recomenda-se ler mais sobre as instalações administrativas, pois é um conceito útil e escrevi uma postagem no stackoverflow: Qual é o objetivo da instalação administrativa iniciada usando o msiexec / a? .
Em essência, a instalação do administrador é importante para:
Leia a postagem do stackoverflow vinculada acima para obter mais detalhes. É um conceito bastante importante para administradores de sistema , empacotadores de aplicativos , desenvolvedores de instalação , gerenciadores de versão e até mesmo o usuário médio para ver o que estão instalando, etc.
Você pode executar uma instalação de administrador de algumas maneiras diferentes, dependendo de como o instalador é entregue. Essencialmente, ele é entregue como um arquivo MSI ou agrupado em um arquivo setup.exe .
Execute estes comandos em um prompt de comando elevado e siga as instruções na GUI para as linhas de comando interativas:
Arquivos MSI :
msiexec /a File.msi
para rodar com a GUI, você também pode fazer isso silenciosamente:
msiexec /a File.msi TARGETDIR=C:\MyInstallPoint /qn
Arquivos setup.exe :
setup.exe /a
Um arquivo setup.exe também pode ser uma configuração de estilo herdado (não MSI) ou o temido tipo de arquivo InstallScript MSI - um tipo de projeto Installshield de buggy bem conhecido com formato híbrido de MSI não compatível com os padrões. É essencialmente um MSI com uma GUI personalizada e mais avançada, mas também está cheia de bugs.
Para arquivos setup.exe herdados, o / a não fará nada, mas você pode tentar a opção / extract_all: [path] conforme explicado neste pdf . É uma boa referência para instalação silenciosa e outras coisas também. Outro recurso é esta lista de parâmetros da linha de comando Installshield setup.exe .
Os arquivos de patch MSI (* .MSP) podem ser aplicados a uma imagem de administrador para extrair adequadamente seus arquivos. O 7Zip também poderá extrair os arquivos, mas eles não serão formatados corretamente.
Por fim, se nenhuma outra maneira funcionar, você pode se apossar dos arquivos de instalação extraídos limpando a pasta temporária do sistema, iniciando o setup.exe interativamente e aguardando o primeiro diálogo aparecer. Na maioria dos casos, o instalador extraiu vários arquivos para uma pasta temporária. Às vezes, os arquivos são simples, outras vezes no formato CAB, mas o Winzip, 7Zip ou até o Universal Extractor (não testaram este produto) - podem abri-los.
Eu recomendaria o UniExtract para tornar a solução da neoice ainda mais fácil. Ele faz o mesmo, apenas é mais automatizado e permite vários métodos para extrair arquivos MSI, não apenas uma instalação administrativa (como sua solução está usando).
O UniExtract também pode lidar com o exe empacotado com o WISE ou InstallShield, além de vários outros formatos compactados. Ah, e é grátis.
O Universal Extractor é um programa que faz exatamente o que diz: extrair arquivos de qualquer tipo de arquivo, seja um arquivo zip simples, um programa de instalação ou mesmo um pacote do Windows Installer (.msi).
Se você instalar o Total Commander , há um plug-in para abrir e extrair arquivos MSI .
você pode usar o Orca, esse aplicativo faz parte do Platform SDK, mas também pode baixá-lo aqui http://astebner.sts.winisp.net/Tools/Orca.zip
lessmsi
é realmente a melhor escolha aqui, pois oferece a você escolher exatamente quais arquivos extrair e para onde devem ir. Além disso, ele pode ser facilmente instalado usando a apt-get
estrutura do Windows, chamada Choclatey
. O lessmsi
site acima foi movido e também pode ser encontrado / baixado no GitHub . Além disso, você pode encontrar muitas outras ferramentas e informações relacionadas ao MSI AQUI. : (Desculpe, não posso postar mais de 2 links!)
Adicione o PeaZip à lista. Trabalhou como um campeão
Você também pode experimentar o MSI Extractor de Heath Stewart .
Basta baixar o Universal Extractor . Extrai todos os tipos de arquivos, incluindo .exe, .msi, .rar, .zip, .kgb e muito mais.
Experimente o MSITOOLS.EXE hospedado no InstallSite para um extrator da GUI.
As configurações do Installshield .exe (como você as chama) são de vários tipos, e geralmente é possível extrair arquivos delas.
Um installshield setup.exe pode conter instaladores antigos não-msi antigos ou novos instaladores do msi.
Se o setup.exe estiver agrupando uma instalação MSI, você poderá especificar setup.exe / ae a instalação administrativa do MSI será executada, permitindo especificar e local de saída para os arquivos.
Se o setup.exe for uma instalação herdada do Installshield, ele pode ou não oferecer suporte à extração de arquivos por meio da opção / extract_all: [path] . Por favor, veja aqui (atualizado em julho de 2011, o link Acresso não era mais válido, atualizado novamente em fevereiro de 2014 - apontando para o itninja agora).
Observe também que outra maneira de se apossar desses arquivos é limpar a pasta temporária do sistema, iniciar o setup.exe interativamente e aguardar o primeiro diálogo aparecer. Na maioria dos casos, o instalador extraiu vários arquivos para uma pasta temporária. Às vezes, os arquivos são simples, outras vezes no formato CAB, mas o Winzip, 7Zip ou até o Universal Extractor (não testaram este produto) - podem abri-los.