Test verze knihovny ComCtl32.Dll

Postup:
V modulu deklarujte:

Private Declare Function LoadLibrary Lib "kernel32" Alias _
"LoadLibraryA" (ByVal lpLibFileName As String) As Long

Private Declare Function GetProcAddress Lib "kernel32" _
(ByVal hModule As Long, ByVal lpProcName As String) As Long

Private Declare Function FreeLibrary Lib "kernel32" _
(ByVal hLibModule As Long) As Long

Private Declare Function DllGetVersion Lib "comctl32.dll" _
(pdvi As DLLVERSIONINFO) As Long

Private Type DLLVERSIONINFO
    cbSize As Long
    dwMajorVersion As Long
    dwMinorVersion As Long
    dwBuildNumber As Long
    dwPlatformID As Long
End Type

'Vrátí True, pokud se verze knihovny shoduje se zaslanou verzí.
Public Function GetComCtlVersion(nMajor As Long, nMinor As Long) As Boolean

   Dim hwndDLL As Long
   Dim lRet As Long
   Dim lGetVer As Long
   Dim typDLLVer As DLLVERSIONINFO

   hwndDLL = LoadLibrary("comctl32.dll")
   If hwndDLL <> 0 Then
       lGetVer = GetProcAddress(hwndDLL, "DllGetVersion")
       If lGetVer <> 0 Then
           typDLLVer.cbSize = Len(typDLLVer)
           lRet = DllGetVersion(typDLLVer)
           If lRet = 0 Then
               nMajor = typDLLVer.dwMajorVersion
               nMinor = typDLLVer.dwMinorVersion
           End If
       End If
       Call FreeLibrary(hwndDLL)
       GetComCtlVersion = True
   End If

End Function

Verze:
Microsoft Windows 95/Windows NT 4.0 - 4.00 
Microsoft Internet Explorer 3.0x - 4.70 
Microsoft Internet Explorer 4.00 - 4.71 
Microsoft Internet Explorer 4.01 - 4.72 
Microsoft Internet Explorer 5.00 - 5.00


Tuto funkci můžete použít i pro testování verzí jiných knihoven, stačí jen malá úprava.

Zpět

Autor: The Bozena