答案1
下面的腳本應該做你想做的事,即當彈出視窗出現時關閉它,然後重新啟動另一個進程
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
i = x
Do While i = x
Set colProcesses = objWMIService.ExecQuery _
("Select * from Win32_Process Where Name = 'notepad.exe'")
'("Select * from Win32_Process Where Name = 'Name of Your process you are waiting for to start'")
If colProcesses.Count = 0 Then
'It does not exist do nothing
Else
For Each objProcess in colProcesses
'this will close the process you were watching, as soon as it starts
objProcess.Terminate()
'Closing the process you want to restart
Set colProcesses = objWMIService.ExecQuery _
("SELECT * FROM Win32_Process WHERE Name = 'winword.exe'")
'("SELECT * FROM Win32_Process WHERE Name = 'name of the process you want to terminate'")
For Each objProcess2 in colProcesses
objProcess2.Terminate()
Next
Dim objShell
Set objShell = WScript.CreateObject( "WScript.Shell" )
objShell.Run("""C:\Program Files (x86)\Internet Explorer\iexplore.exe""")
'objShell.Run("""process or application you want to start""")
Set objShell = Nothing
Next
End If
Loop