VERIFICAR PROGRAMA ABERTO
A rotina abaixo evita que eu abra meu programa mais de uma vez.
Como posso incrementar essa rotina para que após exibir essa mensagem, ela maximize a aplicação que já está em execução.
Grato
If App.PrevInstance = True Then
MsgBox [Ô]Uma outra Instância do Sistema já está em Execução nesta Máquina![Ô], vbInformation, [Ô]Sistema[Ô]
End
Endif
Como posso incrementar essa rotina para que após exibir essa mensagem, ela maximize a aplicação que já está em execução.
Grato
If App.PrevInstance = True Then
MsgBox [Ô]Uma outra Instância do Sistema já está em Execução nesta Máquina![Ô], vbInformation, [Ô]Sistema[Ô]
End
Endif
Teria que usar uma API(set focus) pra isso, vc pode pegar a id de instância da sua aplicação com a propriedade hInstance e usar a API para voltar o foco:
Em um módulo:
Public Declare Function PutFocus Lib [Ô]user32[Ô] Alias [Ô]SetFocus[Ô] (ByVal hwnd As Long) As Long
No seu form:
If App.PrevInstance = True Then
PutFocus App.hInstance
Endif
Em um módulo:
Public Declare Function PutFocus Lib [Ô]user32[Ô] Alias [Ô]SetFocus[Ô] (ByVal hwnd As Long) As Long
No seu form:
If App.PrevInstance = True Then
PutFocus App.hInstance
Endif
Não funcionou.
to precisando que não abra a aplicação novamente e volte para a aplicação que ja esta ativa
para testar o que você postou eu criei uma nova aplicação, somente com o que você postou acima
to precisando que não abra a aplicação novamente e volte para a aplicação que ja esta ativa
para testar o que você postou eu criei uma nova aplicação, somente com o que você postou acima
Tópico encerrado , respostas não são mais permitidas