Pular para o conteúdo principal
Splashtop20 years of trust
EntrarTeste gratuito
+1.408.886.7177EntrarTeste gratuito
A man working on a computer with code on-screen in an office.

Como executar uma instalação silenciosa do msiexec: comandos e opções

10 min de leitura
Atualizado
Comece a usar a Splashtop
As melhores soluções de acesso remoto, suporte remoto e gerenciamento de endpoints.
Teste gratuito

Os pacotes Windows Installer (MSI) são fáceis de instalar num dispositivo, mas uma instalação silenciosa do Windows Installer em centenas de dispositivos exige o comando certo. Felizmente, como os pacotes Windows Installer partilham um conjunto padrão de opções do msiexec, os comandos principais são os mesmos para todos os MSI.

Tendo isso em mente, pode executar comandos de instalação silenciosa do msiexec em vários dispositivos. No entanto, como diz o ditado, o diabo está nos detalhes. O nível de apresentação, o comportamento de reinício, o registo e outros fatores podem afetar uma instalação silenciosa de MSI e determinar se tem êxito ou falha. E, se falhar, nada aparece no ecrã, pelo que o código de saída e o registo são o único registo do que correu mal.

Então, como podemos executar corretamente instalações silenciosas de MSI? Vamos explorar os switches que precisa de conhecer, como instalar e desinstalar silenciosamente, como corrigir falhas comuns e muito mais, para que possa executar instalações silenciosas de MSI com eficácia e facilidade.

O comando de instalação msiexec para uma instalação MSI silenciosa

Primeiro, vamos analisar o comando de instalação msiexec e o significado de cada uma das suas partes. Para instalar pacotes MSI através do cmd, abra uma Linha de Comandos com privilégios elevados e execute este comando de instalação msi no cmd:

msiexec /i "C:\Installers\App.msi" /qn /norestart /l*v "C:\Logs\App-install.log"

Claro que, se não compreender a sintaxe da linha de comandos, isto não lhe diz nada. Por isso, vamos dividi-lo em partes mais fáceis de compreender:

  • /i instala o pacote. Este é o comando inicial que dá início ao processo; certifique-se de colocar o caminho completo a seguir entre aspas para que quaisquer espaços nos nomes das pastas não interrompam o comando.

  • /qn indica que o comando deve ser executado sem interface de utilizador. Também pode usar /quiet como opção equivalente.

  • /norestart impede o Windows Installer de reiniciar o dispositivo após a conclusão da instalação, mesmo que o pacote o solicite. Isto ajuda a evitar que a instalação interrompa o trabalho ao reiniciar subitamente os dispositivos dos utilizadores finais.

  • /l*v escreve um registo detalhado no caminho indicado. Tenha em conta que a pasta para a qual aponta já tem de existir.

Certifique-se de que executa o comando a partir de uma Linha de Comandos elevada, para que não precise de pedir permissões. Uma instalação silenciosa não pode mostrar um pedido de UAC para solicitar direitos de administrador; caso contrário, não seria silenciosa.

E se estiver a usar PowerShell? Existe um script semelhante para isso, com algumas diferenças importantes:

$p = Start-Process msiexec.exe -ArgumentList '/i "C:\Installers\App.msi" /qn /norestart /l*v "C:\Logs\App-install.log"' -Wait -PassThru $p.ExitCode

Neste caso, o parâmetro -Wait mantém o script em espera até a instalação terminar, e -PassThru devolve o código de saída.

Opções MSI para instalações silenciosas e não assistidas

Em seguida, vamos analisar as opções MSI que precisa de conhecer para instalações silenciosas e não assistidas. A Microsoft documenta a lista completa nas suas opções padrão da linha de comandos do instalador. Tenha em conta que as opções do msiexec não distinguem maiúsculas de minúsculas, por isso, quer introduza /QN quer /qn, o resultado final será o mesmo. A opção /quiet é aquilo a que a maioria das pessoas se refere quando fala de uma instalação silenciosa do msiexec, e a Microsoft trata-a como sendo o mesmo que /qn.

Podemos dividir os parâmetros em três grupos: Apresentação, Reinício e Registo. Cada um é uma parte importante do processo de instalação e determina como o comando é executado.

Alternar

Grupo

O que faz

/quiet ou /qn

Ecrã

Sem qualquer interface de utilizador

/qn+

Ecrã

Sem interface, depois uma caixa de diálogo quando a instalação terminar

/passive

Ecrã

Apenas barra de progresso, sem necessidade de intervenção do utilizador

/qb

Ecrã

Interface básica com uma barra de progresso

/qb!

Ecrã

Interface básica com o botão Cancelar oculto

/norestart

Reinício

Nunca reinicia após a instalação

/promptrestart

Reinício

Pergunta ao utilizador se é necessário reiniciar

/forcerestart

Reinício

Reinicia sempre após a instalação

/l*v "path"

Registo

Registo detalhado de tudo, escrito nesse caminho

/log "caminho"

Registo

Igual a /l* (todas as informações, exceto informações detalhadas e depuração adicional)

Se estiver a implementar em frotas de dispositivos, /qn (ou /quiet) com /norestart é uma combinação comum, enquanto os reinícios são geridos pela ferramenta de implementação. Também convém usar /passive em instalações nas quais o utilizador deve ver o progresso.

Tenha em conta que o msiexec não tem os switches /s nem /silent, embora os instaladores EXE tenham. Os instaladores EXE também não têm uma norma partilhada, por isso podem ser um pouco mais complicados.

Como definir propriedades e transformações MSI numa instalação silenciosa

Quando quiser personalizar um pacote de aplicação, vai querer saber como definir propriedades e transformações MSI. A menos que a linha de comandos defina estas personalizações, uma instalação silenciosa utilizará as predefinições do pacote, por isso é importante saber o que definir.

Quando definir propriedades, estas devem vir depois dos switches como PROPERTY=VALUE. Tenha em conta que o Windows Installer trata os nomes das propriedades em maiúsculas, mas o valor mantém as maiúsculas e minúsculas, e os valores que contêm espaços devem ser colocados entre aspas. Como os nomes das propriedades variam consoante o pacote, convém consultar a documentação de implementação do fornecedor para os confirmar.

Por exemplo, definir propriedades MSI pode parecer algo como isto:

msiexec /i "C:\Installers\App.msi" /qn INSTALLDIR="D:\Apps\App" /l*v "C:\Logs\App-install.log"

Depois, temos as transforms. Uma transform (ficheiro .mst) contém um conjunto de alterações ao pacote para que possam ser aplicadas diretamente, em vez de serem adicionadas à linha de comandos. Pode usar a propriedade TRANSFORMS para as adicionar da seguinte forma:

msiexec /i "C:\Installers\App.msi" TRANSFORMS="C:\Installers\App.mst" /qn /l*v "C:\Logs\App-install.log"

Como desinstalar silenciosamente um MSI

Quando quiser desinstalar silenciosamente um MSI, isso deve ser tão simples como instalá-lo. Muitas vezes, as equipas de IT precisam de remover pacotes, seja para dar lugar a uma mudança de versão, limpar dispositivos ou remover uma instalação falhada.

O comando /x remove um pacote, aceitando as mesmas opções de visualização, reinício e registo que os comandos de instalação. Isto funciona quer com o ficheiro MSI original quer com o código do produto, embora este último seja útil quando o MSI original já não está no dispositivo.

Um comando de desinstalação silenciosa deve ter este aspeto:

msiexec /x "C:\Installers\App.msi" /qn /norestart /l*v "C:\Logs\App-uninstall.log"

Ou:

msiexec /x {PRODUCT-CODE-GUID} /qn /norestart /l*v "C:\Logs\App-uninstall.log"

Como ler os códigos de saída do msiexec

Ao trabalhar com o msiexec, convém compreender os códigos de saída. Quando o msiexec conclui uma tarefa, devolve um código de saída que os scripts e as ferramentas de implementação leem para verificar se o instalador funcionou, se algo correu mal ou se é necessário reiniciar. A Microsoft lista todos os códigos na sua referência de mensagens de erro do MsiExec.

Os códigos de saída do msiexec são:

Código de saída

Significado

O que fazer

0

Sucesso

Nada

3010

Sucesso, é necessário reiniciar para concluir

Agendar um reinício. Tratar como êxito

1641

Sucesso, o instalador iniciou um reinício

Tratar como sucesso. Esperar que o dispositivo reinicie

1603

Erro fatal durante a instalação

Abra o registo detalhado para encontrar a causa

1618

Já está outra instalação em curso

Aguarde e tente novamente

Em alguns casos, um script tratará qualquer código diferente de zero como uma falha. Nesses casos, sinalizará os códigos 3010 e 1641 como falhas, mesmo que a aplicação tenha sido instalada corretamente. Assim, convém verificar o código de sucesso antes de marcar uma instalação como falha; por vezes, basta um reinício para concluir a instalação.

Porque é que uma instalação MSI silenciosa falha e como corrigi-la

Por vezes, as instalações silenciosas falham. Quando isto acontece, convém saber porquê e como corrigir o problema. Embora uma instalação silenciosa com falha não mostre nada ao utilizador, pode investigar estes elementos para obter mais informações:

1. A instalação não foi executada com direitos de administrador

Uma instalação silenciosa continua a precisar de direitos de administrador para ser executada, mas não pode pedir confirmação aos utilizadores se faltarem permissões. Certifique-se de executar as instalações a partir de uma Linha de Comandos elevada ou de uma ferramenta de implementação com direitos de administrador para não ter de se preocupar com permissões em falta.

No Windows 10, o Erro 1925 pode indicar falta de permissões de administrador.

2. A pasta de registo não existe

O Windows Installer não cria a pasta para um ficheiro de registo. Se o caminho em /l*v apontar para uma pasta que não existe, o ficheiro de registo irá falhar. Certifique-se de que está a registar numa pasta que existe sempre ou crie uma pasta, se necessário.

3. Já está outra instalação em execução

O Windows Installer só pode executar uma instalação de cada vez. Se obtiver o código de saída 1618, isso significa que o instalador está ocupado com outra aplicação. Felizmente, isso significa que só precisa de esperar que a outra instalação termine e, em seguida, voltar a tentar a instalação.

4. A instalação encontrou um erro fatal

Se a instalação encontrou um erro, o código de saída por si só não explicará qual é. Neste caso, convém verificar o registo detalhado para obter mais informações. É por isso que convém incluir /l*v em todos os comandos de instalação silenciosa, para poder verificar os registos caso ocorra algum problema.

Executar uma instalação silenciosa do msiexec em vários dispositivos

Se estiver a gerir vários dispositivos remotos num ambiente empresarial, precisará de uma forma de instalar aplicações e atualizações sem intervenção. A mesma aplicação pode ter de chegar a centenas de dispositivos, por isso, um comando que funciona numa máquina de teste é apenas o começo.

Pode executar uma instalação silenciosa do msiexec em vários dispositivos de várias formas, incluindo:

Implementar um MSI através do Microsoft Intune

Se estiver a usar o Microsoft Intune, pode usá-lo para implementar um MSI de duas formas diferentes.

O Intune pode implementar um MSI como uma aplicação line-of-business (LOB), que aceita apenas um argumento de linha de comandos. Se precisar de mais, então deverá usar a gestão de aplicações Win32, em que o MSI é encapsulado num ficheiro .intunewin e o seu comando msiexec passa a ser o comando de instalação da aplicação.

Tenha em conta que misturar instalações de aplicações Win32 e LOB durante o registo no Windows Autopilot pode levar a falhas de instalação, uma vez que ambas utilizam o serviço Trusted Installer ao mesmo tempo.

Executar instalações remotamente com scripts ou gestão de endpoints

Se não estiver a utilizar Intune, pode executar comandos através do PowerShell, de sessões de acesso remoto ou de uma ferramenta de gestão de endpoints. Por exemplo, o Splashtop AEM (Autonomous Endpoint Management) pode executar scripts e automatizar a gestão de patches em todos os endpoints geridos, incluindo instalações silenciosas e atualizações agendadas para horários convenientes. Para obter um guia completo, consulte o nosso artigo sobre como instalar software silenciosamente em computadores remotos.

Onde o trabalho se acumula

Executar o comando é a parte fácil. O número de aplicações e o trabalho necessário para cada uma podem tornar isso difícil.

Cada aplicação precisa das suas próprias propriedades e transformações, tem de ser testada num dispositivo limpo, precisa de uma forma de confirmar que a instalação funciona, e assim por diante. Isto tem de ser repetido para cada nova versão. Sem automação, isso cria um fluxo constante de trabalho manual, e um pacote não testado pode levar a falhas em vários dispositivos.

O Splashtop Agentic Packr automatiza esse trabalho de empacotamento e teste para cada aplicação e versão.

Crie pacotes de instalação silenciosa testados com o Agentic Packr

Criar, testar e instalar pacotes silenciosamente não tem de ser um processo manual moroso. Com o Splashtop Agentic Packr, pode aliviar a carga das equipas de TI com empacotamento e instalação inteligentes e automatizados.

Splashtop Agentic Packr é uma ferramenta de empacotamento de aplicações com tecnologia de IA que analisa instaladores, cria pacotes com lógica de instalação incluída e testa-os numa máquina virtual limpa. Também escreve as regras de deteção que confirmam que cada instalação foi concluída com êxito. Cada pacote passa por verificações e análises de segurança para garantir que funciona corretamente, com um relatório de QA e registos para que as equipas de TI possam rever tudo antes de ser publicado.

Sempre que sai uma nova atualização, o Splashtop Agentic Packr pode criar automaticamente o pacote atualizado, poupando às equipas de TI a necessidade de gerir manualmente cada lançamento. O Splashtop Agentic Packr pode criar pacotes Intune e publicá-los no Intune, ou agrupar instalações para serem executadas através do SCCM ou manualmente em qualquer dispositivo Windows, tornando-o uma ferramenta flexível para instalações silenciosas e atualizações. Também permite controlar o que os utilizadores finais veem, incluindo pedidos de reinício, adiamentos da instalação e períodos de tolerância.

O Splashtop Agentic Packr cria e testa os pacotes, e o Splashtop AEM pode executar implementações e scripts nos seus endpoints.

Veja como o Splashtop Agentic Packr cria, testa e publica pacotes de instalação silenciosa para todas as aplicações.

Deixe de empacotar aplicações manualmente
Deixe o Splashtop Agentic Packr criar, testar e publicar todas as aplicações e atualizações no Intune. A sua equipa revê os resultados, e os dispositivos mantêm-se atualizados sem scripts manuais.
Veja o Agentic Packr em ação


Compartilhar isso
Feed RSSInscreva-se

Perguntas Frequentes

Como instalo silenciosamente um MSI a partir da linha de comandos?
Qual é a diferença entre /quiet e /qn no msiexec?
O que significa o código de saída 3010 do msiexec?
Porque é que a minha instalação silenciosa do MSI falhou sem mostrar um erro?
Como instalar silenciosamente um MSI em vários computadores ao mesmo tempo?

Conteúdo Relacionado

A man typing on a computer in an office.
Empacotamento de aplicações com IA agêntica

O que é o empacotamento de aplicações de IA? Como funciona o empacotamento agêntico

Saiba mais
A person working at their computer.
Empacotamento de aplicações com IA agêntica

Porque é que o empacotamento lento de aplicações no Intune deixa as aplicações de terceiros expostas

Ver Todos os Artigos de Blog