Boa Tarde,
Gostaria de saber como fazer para fechar um programa externo clicando em um botão. Para abri-lo estou conseguindo normalmente.
Obrigado!
Boa Tarde,
Gostaria de saber como fazer para fechar um programa externo clicando em um botão. Para abri-lo estou conseguindo normalmente.
Obrigado!
@rony, boa tarde.
Pode fazer desta forma:
Sub CommandButton1_Click()
Dim objWMIService, objProcess, colProcess
Dim strComputer, strProcessKill, strProgramPath
strComputer = "."
strProgramPath = "C:\Windows\system32\calc.exe"
strProcessKill = "'Calculator.exe'"
Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\"& strComputer & "\root\cimv2")
Set colProcess = objWMIService.ExecQuery("Select * from Win32_Process Where Name = " & strProcessKill )
For Each objProcess in colProcess
running = True
Application.Item("Aux").Value = objProcess
Next
If running Then
MsgBox "Calculadora já está sendo executada!"
Resp = MsgBox("Deseja finalizar?", vbYesNo,"Finalizar Programa")
If Resp = vbYes Then
Application.Item("Aux").Value.Terminate()
End If
Else
Application.ExecuteExternalApp strProgramPath, "", "", 1
End If
End Sub
Obs.: Este Application.Item(“Aux”).Value é um Tag Interno do Viewer.
Fonte: Script retirado deste KB e deste artigo.
Sds.
Bom dia Fernando.
Grato pela ajuda. Deu certo adaptando para meu programa.