Verificando a instância única do instalador do NSIS
-
06-09-2019 - |
Pergunta
Eu tenho um programa de atualizador escrito no NSIS. Eu só quero ter certeza de que, quando for invocado duas ou mais, não criará outra instância do atualizador, caso contrário, haveria dois ou mais atualizadores em execução.
Como você restringe o atualizador de criar outra instância se o seu atualizador já está em execução? Para que apenas um atualizador esteja em execução, não importa quantas invocações foram feitas.
Obrigado...
Solução
Você deve usar um mutex, veja http://nsis.sourceforge.net/allow_only_one_installer_instance
Outras dicas
Eu apenas imaginei como fazer. Eu usei o plugin KillProc. Ele retorna o número de processos encontrados. Portanto, se encontrar outra instância, ele desiste do programa. Isso garante que apenas uma instância esteja em execução.