VERIFICAR SE APLICATIVO [Ô]X[Ô] ESTA ABERTO

KURTCOBAIN 09/01/2015 21:06:31
#443693
Ola mundo!

bem eu tenho 2 programas criados com VB6

eu queria que o programa [Ô]X[Ô] ao ser aberto verifique se o programa [Ô]Y[Ô] está fechado ,se o programa [Ô]Y[Ô] estiver fechado , o programa [Ô]X[Ô] tambem irá fechar.

se fecharem o programa [Ô]X[Ô] o programa [Ô]Y[Ô] também se fecha, e vice versa.

impedir de [Ô]hackearem[Ô] mudando o nome do executavel ou da janela do programa.

em fim... sugestões de como posso fazer?
MOUSER 10/01/2015 11:45:19
#443698
Você pode incluir o programa Y no Programa X e verificar se existe alguma janela do Y aberto, em execução mesmo em Hide (oculto) e fechar todos logo no Load do Form, assim ele só vai piscar o form na tela e ja sair fechando todos. (Pelo menos no VB.net funciona desta forma).
NLSOLUCOES 13/01/2015 01:22:37
#443748
Simples, você pode trabalhar com os Processos do Windows.
http://www.macoratti.net/13/08/vb6_proc1.htm

Dim ativo as Boolean
Dim meusprocessos As Process()
meusprocessos = Process.GetProcessesByName([Ô]NOME DO PROCESSO*[Ô]) [ô]obter o processos
If meusprocessos .Length > 0 Then [ô]se for maior que 0, então o processos está ativo.
ativo = True [ô]está a correr
Else
ativo = False [ô]não está a correr
End If
BASSO 13/01/2015 09:07:47
#443751
Verificar se o sistema já esta aberto

Dim SaveTitle As String
If App.PrevInstance Then
SaveTitle = App.Title
App.Title = [Ô]... segunda chamada ao mesmo programa.[Ô]
Me.Caption = [Ô]... segunda chamada ao mesmo programa, serei fechado[Ô]
[ô]se for a Sub Main, a linha acima, obviamente, não existe
[ô]as linhas abaixo fecham a segunda chamada e alternam para
[ô]a primeira
AppActivate SaveTitle
[ô]SendKeys [Ô]% R[Ô], True
End
End If

OU

No Form Load da primeira tela do sistema

Private Sub Form_Load()
If App.PrevInstance Then
MsgBox [Ô]A aplicação iniciada já está em uso.[Ô], vbCritical, [Ô]Atenção[Ô]
End
End If
End Sub
Faça seu login para responder