Technical support and scripting issues
Moderators: JRL, Dorian (MJT support)
-
Me_again
- Automation Wizard
- Posts: 1101
- Joined: Fri Jan 07, 2005 5:55 pm
- Location: Somewhere else on the planet
Post
by Me_again » Mon Oct 27, 2008 6:17 pm
Is there a tutorial anywhere on how to change .vbs scripts to incorporate the code in macro scheduler? I would be very interested in using the DST setting flag reported by this .vbs.
Code: Select all
' Syntax:
' CSCRIPT datetime.vbs
'Returns Year,Month,Day,Hour,Minute,Seconds,Offset from GMT, Daylight Savings=True/False
strComputer = "."
' Date and time
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colItems = objWMIService.ExecQuery("Select * from Win32_OperatingSystem")
For Each objItem in colItems
dtmLocalTime = objItem.LocalDateTime
dtmMonth = Mid(dtmLocalTime, 5, 2)
dtmDay = Mid(dtmLocalTime, 7, 2)
dtmYear = Left(dtmLocalTime, 4)
dtmHour = Mid(dtmLocalTime, 9, 2)
dtmMinutes = Mid(dtmLocalTime, 11, 2)
dtmSeconds = Mid(dtmLocalTime, 13, 2)
Next
' Daylight savings
Set Win32Computer = objWMIService.ExecQuery("SELECT * FROM Win32_ComputerSystem")
For Each objItem In Win32Computer
oGMT = (objItem.CurrentTimeZone / 60)
DaySave = objItem.DaylightInEffect
Next
Wscript.Echo dtmYear & " " & dtmMonth & " " & dtmDay & " " & dtmHour & " " & dtmMinutes & " " & dtmSeconds & " " & oGMT & " " & DaySave
' Win32_OperatingSystem available on Windows NT/2000/XP/2003
' Win32_ComputerSystem available on Windows NT/2000/XP/2003
' Alternatives:
' Win32_LocalTime also gives time but is only available on XP/2003
-
Marcus Tettmar
- Site Admin
- Posts: 7395
- Joined: Thu Sep 19, 2002 3:00 pm
- Location: Dorset, UK
-
Contact:
Post
by Marcus Tettmar » Mon Oct 27, 2008 6:40 pm
Put it into a Function:
Code: Select all
VBSTART
' Syntax:
' CSCRIPT datetime.vbs
'Returns Year,Month,Day,Hour,Minute,Seconds,Offset from GMT, Daylight Savings=True/False
Function myDateTime
strComputer = "."
' Date and time
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colItems = objWMIService.ExecQuery("Select * from Win32_OperatingSystem")
For Each objItem in colItems
dtmLocalTime = objItem.LocalDateTime
dtmMonth = Mid(dtmLocalTime, 5, 2)
dtmDay = Mid(dtmLocalTime, 7, 2)
dtmYear = Left(dtmLocalTime, 4)
dtmHour = Mid(dtmLocalTime, 9, 2)
dtmMinutes = Mid(dtmLocalTime, 11, 2)
dtmSeconds = Mid(dtmLocalTime, 13, 2)
Next
' Daylight savings
Set Win32Computer = objWMIService.ExecQuery("SELECT * FROM Win32_ComputerSystem")
For Each objItem In Win32Computer
oGMT = (objItem.CurrentTimeZone / 60)
DaySave = objItem.DaylightInEffect
Next
myDateTime= dtmYear & " " & dtmMonth & " " & dtmDay & " " & dtmHour & " " & dtmMinutes & " " & dtmSeconds & " " & oGMT & " " & DaySave
' Win32_OperatingSystem available on Windows NT/2000/XP/2003
' Win32_ComputerSystem available on Windows NT/2000/XP/2003
' Alternatives:
' Win32_LocalTime also gives time but is only available on XP/2003
End Function
VBEND
VBEval>myDateTime,result
MessageModal>result
-
Me_again
- Automation Wizard
- Posts: 1101
- Joined: Fri Jan 07, 2005 5:55 pm
- Location: Somewhere else on the planet
Post
by Me_again » Mon Oct 27, 2008 7:27 pm
Thank you!