Solução
Aqui está um modelo que você pode usar:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\whatever.exe]
"Debugger"="systray.exe"
Para reverter você só precisa remover a chave de registro:
Windows Registry Editor Version 5.00
[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\whatever.exe]
Observação Os direitos de administrador (ou direitos suficientes para acessar a chave de registro relacionada) são necessários para aplicar as alterações.
Como funciona
A chave de registro Image File Execution Options
foi criada, entre outras coisas, para iniciar automaticamente um depurador quando um aplicativo é iniciado. Enquanto o depurador iniciaria o aplicativo e anexaria, você pode especificar apenas qualquer executável que será executado, substituindo o original.
Que tal systray.exe
? É um programa stub pequeno que foi introduzido pela primeira vez com o Windows 95, e usado para lidar com o ícones de notificação do sistema . Ele não é mais usado nas novas versões do Windows, e foi mantido principalmente por motivos de compatibilidade com versões anteriores. Não possui interface de usuário e não faz nada perceptível além de atualizar a área de notificação quando iniciada.
Observações
-
As alterações são aplicadas imediatamente e funcionam independentemente da edição do Windows 7 instalada.
-
Se você quiser exibir uma mensagem de erro padrão, substitua
systray.exe
por%1
(qualquer executável não existente também funcionará). A exibição de uma mensagem personalizada exigiria a criação de um programa ou script personalizado e o lançamento.
Limitações conhecidas
-
Como o método é baseado no nome do programa, é possível solucioná-lo renomeando o executável para algo. Isso pode ser facilmente evitado, certificando-se de que os usuários do programa estão localizados em um diretório que eles não têm controle total (por exemplo,
C:\Progam Files
). -
Pode-se copiar toda a pasta do programa em outro lugar (por exemplo, na área de trabalho) e renomear o executável. Alguns programas podem não funcionar dessa maneira, mas outros podem. Para evitar isso, verifique se os usuários não têm permissões de gravação em suas pastas de perfil, a menos que seja necessário.