首先感谢您的无私帮助! 我想了解一下如何编写带窗口的active dll?

事情是这样的:我需要用易语言调用一个ocx控件,其实这个控件没有界面,只有一些命令。但是易语言对这个控件支持很不好,但vb的支持却很好。所以我想用vb写一个调用这个ocx... 事情是这样的:
我需要用易语言调用一个ocx控件,其实这个控件没有界面,只有一些命令。但是易语言对这个控件支持很不好,但vb的支持却很好。所以我想用vb写一个调用这个ocx控件的active dll,然后用易语言调用这个active dll间接地调用ocx控件。由于ocx控件需要放到窗体上,所以需要编写一个带窗体的active dll。不带窗体的active dll我会一点,直接使用类模块就可以了,带窗口的就不会了,烦劳您指点!
展开
 我来答
镣亮★延续
2011-11-06 · TA获得超过602个赞
知道答主
回答量:127
采纳率:0%
帮助的人:120万
展开全部
LZ您好。我并不知道我的回答是否让你满意和是否靠谱。

1.打开BCB 6.0 ,新建==》DLL wizard
2.写您的接口函数,函数声明格式:

返回值类型 _declspec(dllexport) _stdcall 函数名(。。。)
{
....

}
如果不是DLL外面调用的函数,你可以用普通的声明方式;
3.检查设定:
(1)Option--》Linker--》Generat import library 勾上(这个选项很重要,有了它,工程才能生成 *.lib 文件)。
(2)Option-->Advanced complier-->Calling conventon -->std call(这是你的DLL中函数被调用的形式,最好选为标准调用)。
4.Builder整个的工程。
5.检查是否生成了*.dll和*.lib文件,缺一不可啊。然后保存你的整个工程。
6.使用时:
首先明确,我们这个工程,最重要就是得到两个文件:
*.lib==>其他工程只有将*.lib 包含进入工程后才能使用你的DLL,
*.dll==>里面还有您的函数
(1)将DLL的Lib文件,添加进你的工程文件;
(2)为你的DLL写一个头文件,对dll中的接口函数进行声明,格式如2中所示
(3)将DLL放在你需要调用DLL的*.exe文件同一目录下。
这样基本就可以完成一个基本的DLL的编写了。具体还要多多实践啊
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式