agentserg
Goto Top

Prozesse eines bestimmten Users mit VBS Beenden/Starten

Hallo zusammen!
Ich bin neu hier und hoffe für mein Problem endlich eine Lösung zu finden.

Folgendes: Ich möchte über den Taskmanager per VBS Prozesse beenden und nach einer Weile wieder starten, und zwar unter einem bestimmten gerade am System angemeldeten Benutzer.

Ich habe schon die Scripte zum Beenden und zum Starten geschrieben. Beim Beenden werden alle laufenden Instanzen des Prozesses beendet, funktioniert auch ohne Problemme.
Nun soll aber einen bestimmte Instanz wieder gestaret werden.

Das StartSkript funktioniert auch, aber da wird das Programm halt für den Benutzer gestarten, der das Script ausführt und nicht für einen bestimmten.

Hier das Skript:
strComputer = "."  
prozess = "C:\Programme\Fujitsu Siemens\ServerView\snisview.exe"  

Set objWMIService = GetObject("winmgmts:\\" & strComputer _   
& "\root\cimv2:Win32_Process")  

Error = objWMIService.Create(prozess, null, null, intProcessID)

If Error = 0 Then
    Wscript.Echo prozess & " wurde mit der Prozess ID " & intProcessID & " gestartet."  
Else
    Wscript.Echo prozess & " konnte nicht gestartet werden. Fehlercode: " & Error & "."  
End If
Und das Ganze soll mit VBS (evtl. auch Batch) realisiert werden.
Bin schon lange auf der Suche nach einer Lösung, habe auch schon Tausende Seiten durchgeblättert und nix gefunden.

Ich bin für jeden Tipp oder auch Verweise auf andere Seiten dankbar!

Content-Key: 18031

Url: https://administrator.de/contentid/18031

Ausgedruckt am: 28.03.2024 um 20:03 Uhr

Mitglied: superboh
superboh 20.10.2005 um 02:32:47 Uhr
Goto Top
Hallo,

per Batch könntest Du den Prozess, also die .exe per RunAs unter einen andern User starten.

Gruss,
Thomas
Mitglied: AgentSerg
AgentSerg 25.10.2005 um 08:55:02 Uhr
Goto Top
Danke für den Tipp mit Batch, werde die nächsten Tage mal ausprobieren.

Ich habe noch etwas gefunden, und zwar kann man mit VBS geplante Tasks aufrufen und als Parameter einen anderen Benutzer übergeben.

Deshalb dachte ich, ich erstelle ein inaktives Task, was mein VBS startet und kann dann aus einem anderen Skript heraus das Task mit dem richtigen Benutzer starten.

Es sei denn, ich habe einen Denkfehler und es kann so nicht funktionieren. face-smile
Jedenfalls werde ich das mal ausprobieren und meine Erfahrungen dann hier posten.
Mitglied: AgentSerg
AgentSerg 25.10.2005 um 09:29:18 Uhr
Goto Top
Ich habe gerade die Syntax vom RunAs-Befehl angesehen:

RUNAS /USER: 'username' 'program'

Wie es aussieht kann man nur den Usernamen ohne Passwort übergeben und das kommt für mich nicht in Frage.
Das Ganze soll automatisch ablaufen, ohne eine Passwort-Eingabe.

Der Aufruf eines Tasks mit Benuzerdaten als Parameter ist doch keine VBS-Funktion sondern ein Batch-Befehl: schtasks

Hier der Aufruf:
schtasks /run /tn TASKNAME /s PCNAME /u DOMÄNE\USER /p PASSWORT

Allerding wird dieser Befehl von Win2000 nicht erkannt, von XP schon.
Also, muss was anderes her.

Bin für jede Hilfe dankbar!