-
Notifications
You must be signed in to change notification settings - Fork 72
/
Copy pathwinos.ahk
30 lines (26 loc) · 1.07 KB
/
winos.ahk
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#NoEnv
#Warn
Envget,LocalAppData, LOCALAPPDATA
Envget,SessionName, SESSIONNAME
if A_Is64bitOS {
EnvGet,Prog32, ProgramFiles(x86)
EnvGet,Prog64, ProgramFiles
} else {
EnvGet,Prog32, ProgramFiles
}
winos_GetTimestampUTC() { ; http://msdn.microsoft.com/en-us/library/ms724390
VarSetCapacity(ST, 16, 0) ; SYSTEMTIME structure
DllCall("Kernel32.dll\GetSystemTime", "Ptr", &ST)
Return NumGet(ST, 0, "UShort") ; year : 4 digits until 10000
. SubStr("0" . NumGet(ST, 2, "UShort"), -1) ; month : 2 digits forced
. SubStr("0" . NumGet(ST, 6, "UShort"), -1) ; day : 2 digits forced
. SubStr("0" . NumGet(ST, 8, "UShort"), -1) ; hour : 2 digits forced
. SubStr("0" . NumGet(ST, 10, "UShort"), -1) ; minute : 2 digits forced
. SubStr("0" . NumGet(ST, 12, "UShort"), -1) ; second : 2 digits forced
}
winos_isotime_now() {
UTCTimestamp := winos_GetTimestampUTC()
UTCFormatStr := "yyyy-MM-dd'T'HH:mm:ss'Z'"
FormatTime, TimeStr, %UTCTimestamp%, %UTCFormatStr%
return %TimeStr%
}