4 ; Based on Yazno's function, http://yazno.tripod.com/powerpimpit/
\r
5 ; Updated by Joost Verburg
\r
7 ; Returns on top of stack
\r
9 ; Windows Version (95, 98, ME, NT x.x, 2000, XP, 2003)
\r
11 ; '' (Unknown Windows Version)
\r
14 ; Call GetWindowsVersion
\r
16 ; ; at this point $R0 is "NT 4.0" or whatnot
\r
18 Function GetWindowsVersion
\r
25 ReadRegStr $R0 HKLM \
\r
26 "SOFTWARE\Microsoft\Windows NT\CurrentVersion" CurrentVersion
\r
28 IfErrors 0 lbl_winnt
\r
31 ReadRegStr $R0 HKLM \
\r
32 "SOFTWARE\Microsoft\Windows\CurrentVersion" VersionNumber
\r
35 StrCmp $R1 '4' 0 lbl_error
\r
39 StrCmp $R1 '4.0' lbl_win32_95
\r
40 StrCmp $R1 '4.9' lbl_win32_ME lbl_win32_98
\r
58 StrCmp $R1 '3' lbl_winnt_x
\r
59 StrCmp $R1 '4' lbl_winnt_x
\r
63 StrCmp $R1 '5.0' lbl_winnt_2000
\r
64 StrCmp $R1 '5.1' lbl_winnt_XP
\r
65 StrCmp $R1 '5.2' lbl_winnt_2003 lbl_error
\r
68 StrCpy $R0 "NT $R0" 6
\r