以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  如何导入VB6编写的OCX控件  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=17386)

--  作者:黑狼
--  发布时间:2012/3/12 9:15:00
--  如何导入VB6编写的OCX控件
 我有一个用VB6编写的控件,现在想导入到foxtable中,应该如何处理呢?
--  作者:lxl
--  发布时间:2012/3/12 9:34:00
--  

如果安装了vs,在附带安装的SDK包里面有一个软件:aximp.exe

没装vs的话,试试我上传的这个,不知道能不能独立使用。下载后把后缀名txt修改为exe 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:aximp.txt

 

使用方法:
axmip.exe D:\\abc.ocx

会生成两个dll 如果你的ocx控件需要在界面显示 就使用Ax开头那个,如果不需显示,使用另外一个dll即可

 

 

[此贴子已经被作者于2012-3-12 9:37:51编辑过]

--  作者:lxl
--  发布时间:2012/3/12 9:37:00
--  
还有 ocx控件必须复制到system32下面,并注册,否则运行的时候会抛找不到模块的
--  作者:狐狸爸爸
--  发布时间:2012/3/12 9:40:00
--  
我是这么干的:
 
在vs.net中新建一个项目,引用这个ocx对应的控件,会生成一个Interop.开头的dll文件,将这个文件复制到foxtable安装目录下,并引用,就可以用了。

--  作者:lxl
--  发布时间:2012/3/12 9:59:00
--  
以下是引用狐狸爸爸在2012-3-12 9:40:00的发言:
我是这么干的:
 
在vs.net中新建一个项目,引用这个ocx对应的控件,会生成一个Interop.开头的dll文件,将这个文件复制到foxtable安装目录下,并引用,就可以用了。

恩,用vs方便多了,vs估计也是使用aximp生成的dll

aximp会生成两个:

Interop.abc.dll

Interop.Axabc.dll

第一个代理对象的只实现了com接口,

第二个dll中的代理对象又封装成一个Winform控件,基类是AxHost ,AxHost基类是Control

 

 

 


--  作者:baoxyang
--  发布时间:2012/3/12 10:59:00
--  
以下是引用狐狸爸爸在2012-3-12 9:40:00的发言:
我是这么干的:
 
在vs.net中新建一个项目,引用这个ocx对应的控件,会生成一个Interop.开头的dll文件,将这个文件复制到foxtable安装目录下,并引用,就可以用了。

Interop.abc.dll

Interop.Axabc.dll

 

老大,请问下,目前是引用第几个DLL。我用你方法试下


--  作者:baoxyang
--  发布时间:2012/3/12 11:00:00
--  
以下是引用lxl在2012-3-12 9:37:00的发言:
还有 ocx控件必须复制到system32下面,并注册,否则运行的时候会抛找不到模块的

请问,可否在狐表中进行用代码来注册此控件呢?如果可以,代码如何写?


--  作者:狐狸爸爸
--  发布时间:2012/3/12 11:43:00
--  

做成批处理文件,内容:

 

regsvr32 dddd.dll

 

在foxtable执行这个批处理。


--  作者:baoxyang
--  发布时间:2012/3/12 11:46:00
--  

明白,谢了!

另外

Interop.abc.dll

Interop.Axabc.dll

 

是引用第几个DLL?


--  作者:黑狼
--  发布时间:2012/3/12 12:03:00
--  
 要是能在控件列表中显示出来添加的控件就方便多了