_MSIExecute Mutex
O _MSIExecute Mutex é definido somente durante o processamento da tabela InstallExecuteSequence, da tabela AdminExecuteSequence ou tabela AdvtExecuteSequence.
Como duas instalações não podem ser executadas no mesmo processo, uma tentativa de chamar a API (interface de programação de aplicativo) do instalador retorna ERROR_INSTALL_ALREADY_RUNNING (1618) em dois casos:
- Enquanto o _MSIExecute Mutex está definido.
- Enquanto o processo atual está processando a tabela InstallUISequence ou tabela AdminUISequence.
Consulte as mensagens de de Log de Eventos do para obter informações sobre qual aplicativo está sendo instalado.
Nos casos em que é impraticável retornar um erro de ERROR_INSTALL_ALREADY_RUNNING, você pode recuperar o status atual do serviço Windows Installer antes de tentar iniciar a instalação usando a função QueryServiceStatusEx. O serviço Windows Installer está em execução se o valor do membro dwControlsAccepted da estrutura de SERVICE_STATUS_PROCESS retornada estiver SERVICE_ACCEPT_SHUTDOWN.
Windows Installer 2.0: Sem suporte. O uso da função QueryServiceStatusEx para recuperar o status atual do serviço Windows Installer requer o Windows Installer versão 3.0 ou superior.