NOTIFICACAO DE UM PROGRAMA

BRUNOPESCAROLLI 20/12/2011 20:53:01
#391718
ola eu gostaria de por exemplo eu tenho o notepad certo?

eu queria montar um form que apenas monitorasse ele mas com seguinte quando eu fecho o notepad , quero que a form me envie uma msgbox notificando que eu fechei o notepad do tipo [Ô]O programa foi encerrado![Ô]

qual o codigo??
BRUNOPESCAROLLI 22/12/2011 11:42:16
#391839
cara da um monte de erro preciso disso me um VB2008
PEGUDO 22/12/2011 13:56:27
#391850
Tenta esta gambiarra aí
Lá em cima, declare:
[txt-color=#0000f0]Imports[/txt-color] System.ComponentModel

No escopo do editor de texto (lá onde se coloca variáveis públicas), digite:
[txt-color=#0000f0]Private WithEvents[/txt-color] BGW_notepad [txt-color=#0000f0]As New[/txt-color] BackgroundWorker

Eu não sei como você vai monitorar o notepad, mas este exemplo eu fiz para executar no Load do Form e com o Notepad já aberto:
Insira este código no editor de códigos:
    Private Sub BGW_notepad_DoWork(sender As Object, e As System.ComponentModel.DoWorkEventArgs) Handles BGW_notepad.DoWork
AindaAberto:
Dim Fechou As Boolean = False

VerificaNotepad(Fechou)

If Fechou = False Then
[txt-color=#0000f0]GoTo[/txt-color] AindaAberto
Else
MsgBox([txt-color=#e80000][Ô]O programa foi encerrado![Ô][/txt-color])
End If
End Sub

Agora crie esta sub:
    Private Sub VerificaNotepad(ByRef QualOpcao As Boolean)
Dim Processos() As Process = Process.GetProcesses

[txt-color=#0000f0]For Each[/txt-color] Processo As Process In Processos
If Processo.ProcessName = [txt-color=#e80000][Ô]notepad[Ô][/txt-color] Then
QualOpcao = False
Exit For
Else
QualOpcao = True
End If
Next
End Sub

Lembre-se de que para rodar este exemplo o notepad já tem que estar aberto
Depois que o programa carregar feche o Notepad e veja o resultado
Abraços
BRUNOPESCAROLLI 23/12/2011 22:44:45
#391925
ok e isso mesmo mas com coloco esta estrura funcionando apatir de um Button?
PHOENIX209E 24/12/2011 01:00:51
#391930
no fomr_load coloque isso
Control.CheckForIllegalCrossThreadCalls = False
e no button vc faz a chamada..
BGW_notepad.RunWorkerAsync()
MARCELOKROL 24/12/2011 13:28:16
#391935
Assim tambem funciona:
  
Dim x As Long
x = Shell([Ô]notepad.exe[Ô], AppWinStyle.NormalFocus, True)
MsgBox([Ô]fechou[Ô])
BRUNOPESCAROLLI 24/12/2011 23:45:54
#391943
obrigado ,feliz natal :D
Tópico encerrado , respostas não são mais permitidas