Get Internet Explorer version
From NSIS Wiki
Jump to navigationJump to search
Author: sunjammer (talk, contrib) |
Description
This function gets the major version of Microsoft Internet Explorer.
The Function
; GetIEVersion ; ; Based on Yazno's function, http://yazno.tripod.com/ ; Updated 2007-06-02 Ch. Bergmann (Yazno) ; Returns on top of stack ; 1-11 (Installed IE Version) ; or ; '' (IE is not installed) ; ; Usage: ; Call GetIEVersion ; Pop $R0 ; ; at this point $R0 is "5" or whatnot Function GetIEVersion Push $R0 ReadRegStr $R0 HKLM "Software\Microsoft\Internet Explorer" "svcVersion" ; IE v10+ StrCpy $R0 $R0 2 IntCmp $R0 9 "" "" lbl_done ClearErrors ReadRegStr $R0 HKLM "Software\Microsoft\Internet Explorer" "Version" IfErrors lbl_123 lbl_4567 lbl_4567: ; IE v4..9 Strcpy $R0 $R0 1 Goto lbl_done lbl_123: ; IE v1..3 ClearErrors ReadRegStr $R0 HKLM "Software\Microsoft\Internet Explorer" "IVer" IfErrors lbl_error StrCpy $R0 $R0 3 StrCmp $R0 '100' lbl_ie1 StrCmp $R0 '101' lbl_ie2 StrCmp $R0 '102' lbl_ie2 StrCpy $R0 '3' ; default to ie3 if not 100, 101, or 102. Goto lbl_done lbl_ie1: StrCpy $R0 '1' Goto lbl_done lbl_ie2: StrCpy $R0 '2' Goto lbl_done lbl_error: StrCpy $R0 '' lbl_done: Exch $R0 FunctionEnd