不注册直接调用ActiveX DLL
(创建时间:2012年04月26日 22:21:00)
Jangogo :
4FNexus 和 其他一些后期的 4Fang产品 都使用了一种 “不注册直接调用ActiveX DLL” 的关键技术。
在你的应用程序的跟目录下 新建一个 sys 的文件夹,把 dcom.dll (4FNexus的sys中有这个文件)拷贝到sys文件夹里
'在一个模块里面 加入以下声明代码:
'******** Obj-Instantiation without using the registry *********
Declare Function GETINSTANCE Lib "sys\dcom" (FName As String, ClassName As String) As Object
Declare Function GETINSTANCELASTERROR Lib "sys\dcom" () As String 'if GETINSTANCE returns Nothing
'要使用的时候,调用如下:
on error resume next
dim o as object
set o=GETINSTANCE(App.Path & "\sys\mydllfile.dll", "MyClassName")
'如果出错了就显示出错信息,一般我们不会显示这个信息给用户
if o is nothing then msgbox GETINSTANCELASTERROR()
文档中心