fre4ki
Goto Top

Letzten Systemneustart als Datum-Zeit ausgeben

Hallo liebe Programmierer,

ich suche eine Möglichkeit das Datum und die Zeit des letzten Neustarts
per VBScript auszugeben.

Ziel soll es dann sein dies in BGInfo für einen Server zu verwenden...

z. B.

Last Restart: 17.08.2007, 20:50 Uhr

Habe bereits eine Möglichkeit gefunden die Zeit in Minuten zu wiedergeben,
allerdings will ich das Datum drinnen stehen haben.


Der Text sieht so aus:

- - - -

strComputer = "."

Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colOperatingSystems = objWMIService.ExecQuery _
("Select * from Win32_OperatingSystem")

For Each objOS in colOperatingSystems
dtmBootup = objOS.LastBootUpTime
dtmLastBootupTime = WMIDateStringToDate(dtmBootup)
dtmSystemUptime = DateDiff("n", dtmLastBootUpTime, Now)
Wscript.Echo dtmSystemUptime & " minutes"
Next

Function WMIDateStringToDate(dtmBootup)
WMIDateStringToDate = CDate(Mid(dtmBootup, 5, 2) & "/" & _
Mid(dtmBootup, 7, 2) & "/" & Left(dtmBootup, 4) _
& " " & Mid (dtmBootup, 9, 2) & ":" & _
Mid(dtmBootup, 11, 2) & ":" & Mid(dtmBootup,13, 2))
End Function

- - - -

Vielen Dank schon mal...

Content-Key: 66505

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

Printed on: April 19, 2024 at 01:04 o'clock

Member: bastla
bastla Aug 17, 2007 at 19:05:34 (UTC)
Goto Top
Hallo FreAki4u!

Wird doch ohnehin im Script schon ermittelt und muss nur noch ausgegeben werden:
WScript.Echo dtmLastBootUpTime

Grüße
bastla
Member: fre4ki
fre4ki Aug 17, 2007 at 19:46:11 (UTC)
Goto Top
Oh mein Gott, man merkt wohl ich Programmier nicht so viel face-smile

Jetzt hab ich nur noch folgendes Problem:

- - - -

Laufzeitfehler in Microsoft VBScript

Objekt erforderlich: "Wscript"

- - - -

Was könnte das nun noch sein?

Kommt aber nur wenn ich das Script in BG-Info einfügen will.

Das Script lässt sich so ganz normal ausführen...
Member: bastla
bastla Aug 17, 2007 at 19:51:34 (UTC)
Goto Top
Hallo FreAki4u!

Für welche Zeile erhältst Du den Fehler?

Grüße
bastla
Member: fre4ki
fre4ki Aug 17, 2007 at 20:05:29 (UTC)
Goto Top
Wscript.Echo dtmSystemUptime & " minutes"


Hängt wohl irgendwie mit dem Wscript Befehl zusammen.
Member: bastla
bastla Aug 17, 2007 at 20:09:51 (UTC)
Goto Top
Hallo FreAki4u!

Wie willst Du denn die Scriptausgabe in BGInfo einbinden?

Grüße
bastla
Member: fre4ki
fre4ki Aug 17, 2007 at 20:35:21 (UTC)
Goto Top
Über VB Script File
Member: bastla
bastla Aug 17, 2007 at 20:51:08 (UTC)
Goto Top
Hallo FreAki4u!

Da ich BGInfo noch nicht verwendet hatte, hat's etwas gedauert ...

Durch diesen Forumsbeitrag habe ich herausgefunden, dass "Echo" (ohne "WScript" davor) für die Ausgabe verwendet werden muss, daher könnte das Script (mit etwas formatierter Ausgabe) so aussehen:
strComputer = "."  

Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")  
Set colOperatingSystems = objWMIService.ExecQuery _
("Select * from Win32_OperatingSystem")  

For Each objOS in colOperatingSystems
	dtmBootup = objOS.LastBootUpTime
	dtmLastBootupTime = WMIDateStringToDate(dtmBootup)
	dtmSystemUptime = DateDiff("n", dtmLastBootUpTime, Now)  
	intDays = dtmSystemUptime\1440
	intHrs = dtmSystemUptime\60 Mod 24
	intMins = dtmSystemUptime Mod 60
	If intDays Then strUpTime = intDays & " Tag"  
	If intDays > 1 Then strUpTime = strUpTime & "e"  
	If intDays Then strUpTime = strUpTime & " "  
	If intDays+intHrs Then strUpTime = strUpTime & intHrs & " Stunde"  
	If intDays+intHrs And intHrs <> 1 Then strUpTime = strUpTime & "n"  
	If intDays+intHrs Then strUpTime = strUpTime & " "  
	strUpTime = strUpTime & intMins & " Minute"  
	If intMins <> 1 Then strUpTime = strUpTime & "n"  
Next
Echo strUpTime

Function WMIDateStringToDate(dtmBootup)
WMIDateStringToDate = CDate(Mid(dtmBootup, 5, 2) & "/" & _  
Mid(dtmBootup, 7, 2) & "/" & Left(dtmBootup, 4) _  
& " " & Mid (dtmBootup, 9, 2) & ":" & _  
Mid(dtmBootup, 11, 2) & ":" & Mid(dtmBootup,13, 2))  
End Function

Grüße
bastla

P.S.: Für Bootdatum/-zeit gibt es ja ohnehin die Variable <Boot Time> in BGInfo ...
Member: fre4ki
fre4ki Aug 17, 2007 at 21:26:59 (UTC)
Goto Top
Hallo,

dankeschön für deine Mithilfe.

Ich habe allerdings die Minuten rausgenommen.

Schließlich haben Server auch noch andere Aufgaben, ausser ein Script jede Minute auszuführen damit der Desktop Hintergrund wieder aktuell ist... face-smile

Das Script wird nun jede Stunde ausgeführt, und wie es scheint funktioniert jetzt alles.

PS: Hast du die Variable Boot-Time ausprobiert? Scheinbar ist das irgendwas anderes...

Hast du vielleicht sonst noch irgendwelche Ideen, die man einbinden könnte?
Member: bastla
bastla Aug 17, 2007 at 22:52:26 (UTC)
Goto Top
Hallo FreAki4u!

Hast du die Variable Boot-Time ausprobiert? Scheinbar ist das irgendwas anderes...
In der (vorhin heruntergeladenen) Version 4.10 zumindest wird die Zeit so wie auch vom Script berechnet angezeigt - sieht für mich OK aus.

Ich habe allerdings die Minuten rausgenommen.
Hätte ich auch für sinnvoll gehalten, aber gelegentlich ist der Spieltrieb stärker ... face-wink

Grüße
bastla