Oi.
Assim deu certo:
' If ProcessMin(hSnapShot, uProcess) = 1 Then
Do
If LCase$(Left$(uProcess.szExeFile, InStr(1, uProcess.szExeFile, vbNullChar) - 1)) = LCase$(EXEName) Then
hProcess = OpenProcess(PROCESS_ALL_ACCESS, False, uProcess.th32ProcessID)
CloseProcess = TerminateProcess(hProcess, ByVal 0&) > 0
Exit Do
End If
Loop While ProcessNext(hSnapShot, uProcess)
' End If
Algum perigo de dar erro com este IF...END IF comentado?
Coloquei um on error goto handle_error: e até agora não parou na linha de erro durante os testes.
E mais uma pergunta: esta rotina só fecha mesmo uma instância por vez? não teria como checar se tem mais de um aplicativo com mesmo nome na memória ou ter o mesmo o efeito do KILL(NT 4) ou TASKKILL(XP), comandos de prompt ?
Obrigadão
