Manchmal funktioniert POP Peeper auf meinem Computer plötzlich nicht mehr. In solchen Fällen wird ein Warnfenster angezeigt und die PID des Fensters im Task-Manager lautet 244. Die Lösung besteht darin, POP Peeper neu zu starten. Ich weiß, wie man ein Programm mithilfe einer .bat-Datei neu startet, weiß aber nicht, wie ich die Datei automatisch ausführen kann, wenn das Warnfenster angezeigt wird.
Kann mir jemand zeigen, wie das geht?
Nachfolgend sehen Sie das betreffende Warnfeld.
Antwort1
Das folgende Skript sollte das tun, was Sie wollten, d. h.Schließen Sie das Popup, wenn es erscheint, und starten Sie dann einen anderen Prozess neu
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