Problemstellung:
Wie ermittle ich die Access Version und das installierte Servicepack?
Der Originalcode stammt von Smarttools - AddIn-World
und wurde von mir um das SP3 (+Hotfix) für A03 und A07, A07+SP1, A07+SP2, A07+SP3, A10, A10 +SP1, A10 +SP2, A13, A13 +SP1 erweitert.
Die Funktion nutzt den undokumentierten Aufruf "715" von SysCmd.
Update 28.02.2014: A13 SP1 hinzugefügt
Update 14.08.2013: A10 SP2 hinzugefügt
Update 27.10.2011: A07 SP3 hinzugefügt
Update 03.07.2011: A10 SP1 hinzugefügt
Update 10.11.2010: A10 hinzugefügt
Update 20.05.2009: A07 SP2 hinzugefügt
Public Function GetAccVersAndSP() As String Dim sVers As String, sSP As String Select Case Val(SysCmd(acSysCmdAccessVer)) Case 9 'Access 2000 sVers = "Access 2000" Select Case SysCmd(715) Case 2719: sSP = "Kein SP!" Case Is >= 6620: sSP = "SP-3" Case Is >= 4506: sSP = "SP-2" Case Is >= 3822: sSP = "SP-1" Case Else: sSP = "Unbekanntes SP !" End Select Case 10 'Access 2002/XP sVers = "Access 2002/XP" Select Case SysCmd(715) Case 2627: sSP = "Kein SP!" Case Is >= 6501: sSP = "SP-3" Case Is >= 4302: sSP = "SP-2" Case Is >= 3409: sSP = "SP-1" Case Else: sSP = "Unbekanntes SP !" End Select Case 11 'Access 2003 sVers = "Access 2003" Select Case SysCmd(715) Case 5614: sSP = "Kein SP!" Case Is >= 8204: sSP = "SP-3 + Hotfix" Case Is >= 8166: sSP = "SP-3" Case Is >= 6566: sSP = "SP-2" Case Is >= 6355: sSP = "SP-1" Case Else: sSP = "Unbekanntes SP !" End Select Case 12 'Access 2007 sVers = "Access 2007" Select Case SysCmd(715) Case 4518: sSP = "Kein SP!" Case Is >= 6603: sSP = "SP-3" Case Is >= 6423: sSP = "SP-2" Case Is >= 6211: sSP = "SP-1" Case Else: sSP = "Unbekanntes SP !" End Select Case 14 'Access 2010 sVers = "Access 2010" Select Case SysCmd(715) Case 4750: sSP = "Kein SP!" Case Is >= 7015: sSP = "SP-2" Case Is >= 6023: sSP = "SP-1" Case Else: sSP = "Unbekanntes SP !" End Select Case 15 'Access 2013 sVers = "Access 2013" Select Case SysCmd(715) Case 4420: sSP = "Kein SP!" Case Is >= 4569: sSP = "SP-1" Case Else: sSP = "Unbekanntes SP !" End Select End Select GetAccVersAndSP = sVers & ", " & sSP End Function
Aufruf:
MsgBox GetAccVersAndSP
Das Ergebnis:
Ähnliche Artikel
Weiterlesen...