|
Postada em 08/07/2006 12:54 hs
Bom gente, olha eu aqui de novo Eu gostaria de saber como fazer para detectar quais os processos que estão rodando E também gostaria de saber de um esquema de que se não encontrar o processo "X" então ele daria um shell para executa-lo novamente. Bom é assim, eu fiz um programa de bloqueio, mas no w98 tem como finaliza-lo, o processo se chama Block, só que eu já fiz uma proteção pra XP, esse só não da em 98, e então ta la rodando esse processo, ai eu queria fazer outro que verifique se tem tal processo rodando, e se não tiver ele executa ele. Ps.: O processo block ta com o comando me.hide e ou outro processo vai ser separado deste, então serão dois! Vlw gente"!!
|
|
|
|
|
Postada em 08/07/2006 23:04 hs
Private Declare Function CreateProcessInitEntryW Lib "Kernel32" _ Alias "#112" (ByVal Param1 As Long, ByVal Param2 As Long) As Long Private Declare Function EntryProcessMinW Lib "Kernel32" _ Alias "#645" (ByVal Param1 As Long, Param2 As PROC) As Long Private Declare Function EntryProcessNextW Lib "Kernel32" _ Alias "#647" (ByVal Param1 As Long, Param2 As PROC) As Long Private Declare Sub KillInitEntryW Lib "Kernel32" _ Alias "#50" (ByVal Param1 As Long) Private Type PROC dwSize As Long: cntUsage As Long: th32ProcessID As Long th32DefaultHeapID As Long: th32ModuleID As Long: cntThreads As Long th32ParentProcessID As Long: pcPriClassBase As Long dwFlags As Long: szExeFile As String * 260: End Type Private Sub UserForm_Click() Dim Rodando As Boolean, h As Long, PPROC As PROC sProc = "winword.exe" Rodando = False h = CreateProcessInitEntryW(&H1 Or &H2 Or &H4 Or &H8, 0&) PPROC.dwSize = Len(PPROC) r = EntryProcessMinW(h, PPROC) Do While r s = Left$(PPROC.szExeFile, IIf(InStr(1, PPROC.szExeFile, Chr$(0)) > 0, InStr(1, PPROC.szExeFile, Chr$(0)) - 1, 0)) If LCase(s) = LCase(sProc) Then Rodando = True r = EntryProcessNextW(h, PPROC) Loop KillInitEntryW h If Rodando = False Then Shell "winword.exe", vbNormalFocus Else MsgBox "winword Já Está Rodando" End If End Sub
EU FIZ AQUI EM CIMA PARA O WORD E SE NÃO ENTENDEU ALGO EU EXPLICO,SOU DE SERTÃOZINHO...VOCÊ É MEU REGIONAL.
|
|
|
|
Postada em 12/07/2006 15:02 hs
Hum..., vlw, sim tenho duvidas por ser iniciante, e pq ainda não testei pq não to em casa, mas testo hoje mesmo, é o seguinte, cola isso num timer? Ou na onde? Só isso! Tem como não dar a msgbox e invés dela se não encontrar ele ja executar ele de uma vez? Vlw hwin Johnny, agradecido desde já! Mas vlw mesmo!!! Passa o seu pra gente conversar, sou de Cravinhos, bem perto, ja fui ai em Sertãozinho!!! FLw
|
|
|
|
|
katapoka
|
CRAVINHOS SP - BRASIL
|
|
ENUNCIADA !
|
|
|
Postada em 21/07/2006 18:42 hs
Hum... realmente, pergunta interessante!!! Como será que faz?
|
|
|
|