Visual Basic-Quellcode
- 'Zeit: WScript.Sleep 1000 * 60 * 3 'ms * secs per min * minutes
- '---------------------------------------------------------------------------------------
- 'Überprüft ob EXCEL läuft:
- '------------------------------------------
- strComputer = "."
- Set objWMIService = GetObject("winmgmts:" _
- & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
- Set colProcesses = objWMIService.ExecQuery _
- ("Select * from Win32_Process Where Name = 'excel.exe'")
- 'Wenn EXCEL läuft, wird eine Info ausgeworfen und der Prozess wird dann nach 3 Minuten beendet:
- '-------------------------------------------------------------------------------------------------
- If colProcesses.Count = 1 Then
- Dim Answer
- Set WshShell = WScript.CreateObject("WScript.Shell")
- Answer = WshShell.Popup("Excel wird in 3 Minuten beendet!", 3, "Info", 0 + 64)
- WScript.Sleep 1000 * 60 * 3 'ms * secs per min * minutes
- strComputer = "."
- Set objWMIService = GetObject("winmgmts:" _
- & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
- i=kill
- Do while i=kill
- Set colProcessList = objWMIService.ExecQuery _
- ("Select * from Win32_Process Where Name = 'excel.exe'")
- For Each objProcess in colProcessList
- objProcess.Terminate()
- Next
- WScript.Sleep 1000 * 60 * 3 'ms * secs per min * minutes
- Loop
- 'Wenn EXCEL nicht läuft, dann überprüfe in 5 Minuten wieder nach ob es läuft (=BEGINNE DIESES SCRIPT VON VORNE)
- '-------------------------------------------------------------------------------------------------------------------
- Else
- Wscript.Sleep 1000 * 60 * 5 'ms * secs per min * minutes
- end if
- 'Hier den Pfad Eingeben, wo dieses Script liegt.
- '------------------------------------------------------------------------------------------------------
- Return = WshShell.Run ("Pfad")
Hey Leute,
ich wollte folgendes basteln, und zwar wird das Skript gestartet.
Nun soll es schaun, ob ein Excel-Prozess läuft...wenn ja, dann soll dieser nach 3 Minuten beenden werden.
Sollte in der Zwischenzeit ein weiterer Excel-Prozess auftauchen, soll dieser natürlich auch nach 3 Minuten beendet werden usw.
Habe jedoch das Problem, dass er mir sofort alle Excel-Prozesse abschießt.
Wenn kein Excel läuft, soll halt ständig überprüft werden, ob ein Excel-Prozess läuft oder nicht....
Das Skript funktioniert teilweise, seht ihr paar Fehler oder die Möglichkeit es einfacher zu gestalten?!
Folgender Fehler taucht auch unteranderem auf:
Objekt erforderlich "WshShell"
Danke und Gruß
Volti
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „highxvoltage1989“ ()