; Loop Until ExitCode <> STILL_ACTIVE CloseHandle hThread '''' 关闭线程。 Else ErrorOccurred = 3 '''' 建立线程出错。 End If Else ErrorOccurred = 2 '''' 找不到 DllGetVersion() 入口地址。 End If FreeLibrary hModule '''' 释放 DLL。 Else ErrorOccurred = 1 '''' 无法装入 DLL。 End If
If Not ErrorOccurred Then With VerInfo MajorVersion = .dwMajorVersion MinorVersion = .dwMinorVersion BuildNumber = .dwBuildNumber PlatformID = .dwPlatformID End With ElseIf ErrorOccurred = 2 And bDefaultIE3 Then '''' 找不到入口地址,说明是 IE 3.0 的 4.0 版 Shell32。 MajorVersion = 4: MinorVersion = 0: BuildNumber = 0: PlatformID = -1 Else GoTo Shell32VerErr '''' 无法预料的错误…… End If GetDllVersion = True Exit Function
Shell32VerErr: GetDllVersion = False End Function
使用“comctl32.dll”作为第一个参数调用这个函数,我们就可以获得它的版本号了。在我的系统中,MajorVersion、MinorVersion、BuildNumber将分别是:5、81、4522,即Common Control版本:5.81.4522。
在确认系统中的Common Control是5.x版本后,我们就可以开始下面的正活儿了!
(待续……)
上一页 [1] [2] |