Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Shutdown Script mit VBS

Frage Entwicklung VB for Applications

Mitglied: MaVdee

MaVdee (Level 1) - Jetzt verbinden

29.01.2009, aktualisiert 07:58 Uhr, 5099 Aufrufe, 9 Kommentare

Hallo!

Gegeben ist folgende Situation. In unserer Firma gibt es einen Mitarbeiter der Ständig zwischen Außendienst und Innendienst unterwegs ist. Oft ist der Fall dass er Abends nicht mehr in die Firma kommt um seinen Rechner Auszuschalten. Hierzu habe ich ein Shutdown Script geschrieben das um 18:00 Uhr über einen Geplanten Task den Computer herunterfährt.

'Shutdown-Script

set objShell = CreateObject("WScript.Shell")
Set shella = WScript.CreateObject ("Shell.Application")
shella.MinimizeAll
Dim objShell
objShell.Run "cmd /C shutdown -s -t 30"
if msgbox("Der Computer wird in 30 Sek. automatisch heruntergefahren. Abbrechen?", vbyesno+vbinformation, "Herunterfahren")=vbyes then
objShell.Run "cmd /C shutdown -a"
end if

Leider wird das Script aber nur einmalig ausgeführt, der Task läuft dann weiter und wird nicht erneut ausgeführt. Dies muss eine Rechtegeschichte sein, da der Task mit dem Administrator Benutzer angelegt ist.

Ich hatte mir überlegt, das Script einfach in den Autostart einzubinden und im Script selbst eine Zeitabfrage zu machen die dann um 18 Uhr die den Shutdown-Vorgang einleitet.

Gibt es eine Möglichkeit so eine Zeitabfrage zu machen? Damit wäre mir sehr geholfen. Natürlich bin ich auch für andere Lösungsvorschläge gerne offen.

Gruß

Flo
Mitglied: 60730
29.01.2009 um 09:43 Uhr
Moinsen,

nimm einen Server, eine Liste der Systeme und aus den Pstools PSShutdown und steuere das herunterfahren der Clients zentral.

Die Liste kannst du auch aktiv selbst (vom Server) erzeugen oder mit Wildcard arbeiten.

Gruß
Bitte warten ..
Mitglied: MaVdee
29.01.2009 um 10:33 Uhr
Das Problem ist, wenn der User um 18 uhr noch am rechner sitzt kriegt er dann die msgbox nicht um den shutdown evtl. abzubrechen
Bitte warten ..
Mitglied: 60730
29.01.2009 um 10:41 Uhr
Zitat von MaVdee:
Das Problem ist, wenn der Admin die Parameter eines Werkzeugs nicht mit /? aufrufen kann

Stimmt - da gebe ich dir Recht -c -m usw. wärs gewesen.

Gruß
Bitte warten ..
Mitglied: MaVdee
29.01.2009 um 11:58 Uhr
Sehr freundlich. Offensichtlich haben Sie da was nicht verstanden. Der User muss die möglichkeit haben den Shutdown abzubrechen. Das ist mit Ihrer Lösung nicht realisierbar.
Bitte warten ..
Mitglied: 60730
29.01.2009 um 13:00 Uhr
Servus und sorry,

dann noch mal ganz von vorne - mittlerweile hab ich auch meinen Kaffee

Leider wird das Script aber nur einmalig ausgeführt, der Task läuft dann weiter und wird nicht erneut ausgeführt.

Wenn ich dich jetzt richtig verstanden habe - läuft das Vbs noch?

Wenn ja - versuchs mal mit einem:
Set WshShell = Nothing
Am Ende des vbs.


Wenn nein - immer noch nicht verstanden - dann bitte nochmal genauer erklären, wo der Schuh drückt.

(Wobei das Script ja auch keine "Schleife" hat - um nach "Nein" nochmal hochzukommen.)

Gruß
Bitte warten ..
Mitglied: MaVdee
29.01.2009 um 13:53 Uhr
Danke für die Hilfe! Werds heute Abend mal testen, sieht aber gut aus.
Bitte warten ..
Mitglied: MaVdee
29.01.2009 um 14:16 Uhr
Das Funktioniert soweit. Jetzt habe ich noch eine Frage.

Wenn der Task ausgeführt wird wenn der User angemeldet ist, erscheint die Msgbox nicht, das hängt offensichtlich damit zusammen das der Task als administrator und nicht als user ausgeführt wird. Trägt man beim erstellen des Tasks nämlich den User ein, erscheint auch die Msgbox.

Lässt sich das irgendwie umgehen? Hab leider nicht so viel Ahnung von VBS. Hat grade mal so fürs Script gereicht :D
Bitte warten ..
Mitglied: 60730
29.01.2009 um 14:34 Uhr
Benutzt du Login Skripte?

Wenn ja, würd ich das Vbs mit einer Batch verbinden. Bzw. eigentlich "immer"

01.
at \\%computername% 18:00 /interactive /every mo,di,mi,do,fr "laufwerk:\pfad\mein.vbs"
"So" richtest du - bzw. der User beim anmelden - schön das vbs um 18:00 für ein deutsches OS ein und durch den Schalter /interaktiv bekommt er auch was auf den Schirm.

Und wenn du das per Loginskript realisieren kannst und der User die rechte hat - dann evtl. noch ein:

01.
at |find "Es sind keine" && AT \\%computername% 18:00 /interactive /every mo,di,mi,do,fr "laufwerk:\pfad\mein.vbs"
davor gestellt.

Try it

Gruß
Bitte warten ..
Mitglied: Logan000
29.01.2009 um 14:36 Uhr
Moin Moin

Ich frage mich gerade mit was für Rechten deine "User" ausgestattet sind.
So wie ich das sehe kann der gemeine Benutzer shutdown.exe nicht verwenden, um das, durch einen Admin "angeordnete" Heruterfahren abzubrechen.
Und das ist auch gut so.

Wenn der Task ausgeführt wird wenn der User angemeldet ist, erscheint die Msgbox nicht, das hängt offensichtlich damit zusammen das der Task als administrator und nicht als user ausgeführt wird. Trägt man beim erstellen des Tasks nämlich den User ein, erscheint auch die Msgbox.
Lässt sich das irgendwie umgehen?
Lass mich überlegen: Kann ein User in den Ausführungskontext eines Administrators schauen? Nö. Das ist ebenfalls gut so.

So wie ich das sehe wird sich deine Anforderung mit der Shutdown.exe nicht realisieren lassen.
Also auch nicht als startskript was um 18:00 nachfragt.

Ich würde mir die sache einfacher machen.
Kläre mit der GL eine Uhrzeit ab, ab der nicht mehr gearbeitet werden sollte. Und fahre diese PC Servergesteuert herunter. Fertig

Gruß L.
Bitte warten ..
Neuester Wissensbeitrag
Internet

Unbemerkt - Telekom Netzumschaltung! - BNG - Broadband Network Gateway

(3)

Erfahrungsbericht von ashnod zum Thema Internet ...

Ähnliche Inhalte
VB for Applications
VBS Script zum versenden mehrerer Verknüpfungen zu Dateien per Lotus Notes

Frage von Sentinel87 zum Thema VB for Applications ...

Batch & Shell
gelöst VBS Script in eine Textdatei ausgeben (VBS mit Batch zusammenführen) (5)

Frage von Luuke257 zum Thema Batch & Shell ...

VB for Applications
gelöst VBS Script kann Prgramm nicht starten (15)

Frage von C.Boerner zum Thema VB for Applications ...

Windows Server
Aufgabenplanung bringt bei VBS Script immer 0x41301 (14)

Frage von 116480 zum Thema Windows Server ...

Heiß diskutierte Inhalte
Windows Server
Outlook Verbindungsversuch mit Exchange (15)

Frage von xbast1x zum Thema Windows Server ...

Microsoft Office
Keine Updates für Office 2016 (12)

Frage von Motte990 zum Thema Microsoft Office ...

Grafikkarten & Monitore
Tonprobleme bei Fernseher mit angeschlossenem Laptop über HDMI (11)

Frage von Y3shix zum Thema Grafikkarten & Monitore ...