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-ID: 66505

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

Ausgedruckt am: 19.12.2024 um 12:12 Uhr

bastla
bastla 17.08.2007 um 21:05:34 Uhr
Goto Top
Hallo FreAki4u!

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

Grüße
bastla
fre4ki
fre4ki 17.08.2007 um 21:46:11 Uhr
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...
bastla
bastla 17.08.2007 um 21:51:34 Uhr
Goto Top
Hallo FreAki4u!

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

Grüße
bastla
fre4ki
fre4ki 17.08.2007 um 22:05:29 Uhr
Goto Top
Wscript.Echo dtmSystemUptime & " minutes"


Hängt wohl irgendwie mit dem Wscript Befehl zusammen.
bastla
bastla 17.08.2007 um 22:09:51 Uhr
Goto Top
Hallo FreAki4u!

Wie willst Du denn die Scriptausgabe in BGInfo einbinden?

Grüße
bastla
fre4ki
fre4ki 17.08.2007 um 22:35:21 Uhr
Goto Top
Über VB Script File
bastla
bastla 17.08.2007 um 22:51:08 Uhr
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 ...
fre4ki
fre4ki 17.08.2007 um 23:26:59 Uhr
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?
bastla
bastla 18.08.2007 um 00:52:26 Uhr
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