'@说明 加载动态链接库
'@参数 动态链接库文件名
'@返回值 成功返回句柄,失败返回0
Public Declare Function DirectCom_Load Lib "kernel32" Alias "LoadLibraryA" ( _
ByVal lpLibFileName As String _
) As Long
'@说明 释放动态链接库
'@参数 动态链接库句柄
'@返回值 非0表示成功,0表示失败
Public Declare Function DirectCom_Free Lib "kernel32" Alias "FreeLibrary" ( _
ByVal hLibModule As Long _
) As Long
'@说明 直接从ActiveX DLL文件创建COM对象
'@参数 ActiveX DLL 文件名
'@参数 类名
'@返回值 成功返回类的实例,失败返回Nothing
Public Declare Function DirectCom_Create Lib "DirectCOM" Alias "GETINSTANCE" ( _
FName As String, _
className As String _
) As Object
'@说明 获取DirectCOM最近的错误信息
'@返回值 错误信息文本
Public Declare Function DirectCom_GetError Lib "DirectCOM" Alias "GETINSTANCELASTERROR" ( _
) As String
Dim hTestDll as Long
Dim MyObject as Object
hTestDll = DirectCom_Load("TestDLL.dll") '加载DLL
if hTestDll then '如果加载成功
set MyObject = DirectCom_Create("TestDLL.dll", "TestClass") '直接创建对象,注意该地方只需指明类名即可
if not Myobject is nothing then '如果创建成功
MyObject.ShowAbout '执行类的方法
end if
set Myobject = nothing '释放对象
DirectCom_Free hTestDll '释放DLL
end if