Como determino o que o Windows Installer (msiexec) está fazendo?

8

Depois de lançar um novo pacote de software, estou vendo alto uso da CPU nas máquinas. Um processo que parece realmente ativo é o msiexec, que realmente não deveria estar em execução. Estou assistindo no process explorer e, de vez em quando, vejo lançamentos de novos processos que posso dizer que estão relacionados ao novo software ... mas os processos terminam rapidamente.

Existe alguma maneira de obter algumas informações específicas sobre o que o Windows Installer está fazendo atualmente?

Boden
fonte
Veja minha resposta no tópico. Se o msiexec.exe aparecer e terminar rapidamente, o mecanismo do Windows Installer provavelmente executou uma ação personalizada dentro do MSI que está sendo instalado. Em outras palavras, um pedaço de código personalizado para configurar o aplicativo corretamente.
Stein Åsmul

Respostas:

7

Eu adicionaria à sugestão do Process Explorer / Process Monitor - execute o FileMon e o RegMon da Sysinternals também. Você pode filtrar / salvar um log do msiexec e processos relacionados, exportar para um csv e ter uma lista completa de ações para o sistema de arquivos e o registro. Compare / contraste com o que foi gravado no log do Windows Installer também.

Você também pode dar uma olhada no que Less Msiérables (LessMSI) de Scott Willeke pode fazer por você ...

http://lessmsi.activescott.com/

Use-o para extrair e alterar guias e / ou conteúdo do MSI, reembalar, verificar todos os itens no pacote MSI, etc.

mctsonic
fonte
2
O Process Monitor encapsula todas as funcionalidades do FileMon e RegMon em um aplicativo.
EBGreen
E o RegMon / Filemon será descontinuado no final do mês.
dmoisan 18/08/09
5

Obtenha o Process Monitor da Sysyinternals (MS agora). Configure o filtro para assistir apenas ao msiexec.exe. Isso lhe dirá tudo o que o processo está fazendo.

EBGreen
fonte
3

O instalador do Windows pode gerar várias instâncias do msiexec.exe por vários motivos.

Antes de tudo, o Windows Installer apresenta uma sequência de interface do usuário (que pode ser ignorada executando a instalação silenciosamente) e uma sequência de instalação . As duas tabelas para essas seqüências são chamadas InstallUISequence e InstallExecuteSequence, respectivamente. Devido à maneira como o Windows Installer permite " direitos elevados " durante a instalação, o InstallExecuteSequence será executado como a conta do sistema. Em outras palavras, se você iniciar a instalação no modo GUI e iniciar a instalação dessa maneira, normalmente verá dois processos msiexec.exe.

Além disso, os arquivos MSI podem iniciar ações personalizadas - algumas das quais podem gerar novos processos (arquivos EXE). Essas ações podem acionar outros processos msiexec.exe para aparecer no gerenciador de tarefas.

Aaron Stebner tem uma explicação melhor aqui: http://blogs.msdn.com/astebner/archive/2005/03/02/384088.aspx

Mais um link: https://www.symantec.com/connect/blogs/multiple-msiexec-processes-running-during-installation

Stein Åsmul
fonte