CurrentDateTime gets the local time, but I needed UTC. Thought I'd post this in case this saves someone else 10-15 minutes of googling and coding:
Code:
Struct tSystemTime
Short wYear
Short wMonth
Short wDayofWeek
Short wDay
Short wHour
Short wMinute
Short wSecond
Short wMilliseconds
End_Struct
External_Function GetSystemTime "GetSystemTime" kernel32.dll Pointer lpName Returns Integer
// returns the current system time in UTC
// https://docs.microsoft.com/en-us/windows/win32/api/sysinfoapi/nf-sysinfoapi-getsystemtime
Function CurrentSystemTime Global Returns DateTime
tSystemTime systime
Pointer pSystime
Integer iRetVal
DateTime dtSystemTime
Move (AddressOf(systime)) to pSystime
Move (GetSystemTime(pSystime)) to iRetVal
Move (DateSetYear(dtSystemTime,systime.wYear)) to dtSystemTime
Move (DateSetMonth(dtSystemTime,systime.wMonth)) to dtSystemTime
Move (DateSetDay(dtSystemTime,systime.wDay)) to dtSystemTime
Move (DateSetHour(dtSystemTime,systime.wHour)) to dtSystemTime
Move (DateSetMinute(dtSystemTime,systime.wMinute)) to dtSystemTime
Move (DateSetMillisecond(dtSystemTime,systime.wMilliseconds)) to dtSystemTime
Function_Return dtSystemTime
End_Function