derhoeppi
Goto Top

Popup - Messagebox für andere Benutzer aufrufen

Hallo,
ich habe ein VBS Skript, dass ein Popup aufruft. Dieses Skript funktioniert einwandfrei, aber ich muss das Skript über einen Scheduled Task im Kontext des Systems aufrufen. Das Skript meldet Benutzer nach einem bestimmten Countdown ab. Da ich in meinem Skript das Popup für den ausführenden Benutzer anzeigen lasse, bekommt der aktuell angemeldete Benutzer leider keinen Hinweis bevor er abgemeldet wird.

Wie kann ich unter dem Systembenutzer oder einem anderen Benutzer ein VBS Skript ausführen, dass allen derzeit angemeldeten Benutzern an einem System eine Meldung ausgibt?

Content-Key: 224445

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

Ausgedruckt am: 28.03.2024 um 22:03 Uhr

Mitglied: colinardo
Lösung colinardo 13.12.2013, aktualisiert am 30.01.2014 um 17:10:24 Uhr
Goto Top
Hallo derhoeppi,
kannst du mit dem Konsolen-Befehl msg /? machen.
Beispiel um eine Nachricht an alle am Rechner angemeldeten Benutzer zu schicken:
msg * "Achtung sie werden gleich abgemeldet!"
In VBS kannst du Shell Befehle ja bspw. so ausführen:
Set objShell = CreateObject("Wscript.Shell")  
objShell.Exec "msg * ""Sie werden gleich abgemeldet!"""  
Grüße Uwe
Mitglied: derhoeppi
derhoeppi 16.12.2013 um 06:58:21 Uhr
Goto Top
Hallo Uwe,

ich hab mir den msg-Befehl angesehen. Schön ist erst einmal das ich einem anderen Benutzer wie mit net send eine Message schicken kann. Das Timeout Problem lässt sich ebenfalls lösen, aber ich habe keinen Parameter gefunden mit dem ich ein Antwortverhalten (z.B. Yes / No Button) erzeugen kann.

Kennst du dafür einen versteckten Parameter?
Mitglied: colinardo
colinardo 16.12.2013 um 09:31:31 Uhr
Goto Top
Zitat von @derhoeppi:
Kennst du dafür einen versteckten Parameter?
das geht damit nicht. Für dein Vorhaben müsstest du zwei Prozesse laufen haben, der eine im System-Account und der andere im angemeldeten Useraccount, dann müssten die zwei sich über InterProcess-Communication unterhalten und das eine dem anderen mitteilen das es eine MsgBox anzeigen soll.den Rückgabewert geht dann den umgekehrten weg. Aber das in VBS... nicht gerade optimal, besser wäre da eine richtige Programmiersprache wie C#.

Grüße Uwe