Determine the version of MS Access: Difference between revisions
From NSIS Wiki
Jump to navigationJump to search
m (→Description: fix broken wiki links/syntax) |
|||
Line 4: | Line 4: | ||
This function determines the MS Access version by checking some registry keys. | This function determines the MS Access version by checking some registry keys. | ||
Note: This script does not cover newer versions or 64-bit versions of Office. | |||
== The Function == | == The Function == |
Latest revision as of 11:03, 12 May 2017
Author: preisl (talk, contrib) |
Description
This function determines the MS Access version by checking some registry keys.
Note: This script does not cover newer versions or 64-bit versions of Office.
The Function
; ; Determines the MS Access version by finding the correct registry key ; ; Input: None ; Output: 97,2000,XP,2003 ; ; Usage: ; ; Call AccessVersion ; Pop "$1" ; MessageBox MB_OK|MB_ICONINFORMATION "Access version: $1" ; Function AccessVersion ; Save R0,R1 on the stack Push $R1 Push $R0 ClearErrors ReadRegStr $R0 HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Office\11.0\Access\InstallRoot" "Path" IfErrors SearchForVersionXP StrCpy $R1 "2003" Goto Found SearchForVersionXP: ClearErrors ReadRegStr $R0 HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Office\10.0\Access\InstallRoot" "Path" IfErrors SearchForVersion2000 StrCpy $R1 "XP" Goto Found SearchForVersion2000: ClearErrors ReadRegStr $R0 HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Office\9.0\Access\InstallRoot" "Path" IfErrors SearchForVersion97 StrCpy $R1 "2000" Goto Found SearchForVersion97: ClearErrors ReadRegStr $R0 HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Office\8.0\Access\Options" "" IfErrors NotFound StrCpy $R1 "97" Goto Found NotFound: ; MessageBox MB_OK|MB_ICONEXCLAMATION "NSIS was not able to detect your MS Access version" StrCpy $R1 "" Found: Pop $R0 Exch $R1 FunctionEnd