关于ActiveX DLL修改后,引用他的程序出错的问题
我做了一个activex 的dll,注册后,引用他做了一个应用程序,
我的dll还在不断更新中,不时的修改其中的处理方法,但是接口没有改动,就是别的应用程序无需改动引用代码。
但是每次修改dll之后,引用他的应用程序就不能执行,必须重新生成exe才可以。
这个问题困扰在下好长时间了,希望大家帮忙解决。
问题点数:100、回复次数:9Top
1 楼zyl910(编程的乐趣在于编程控制硬件,与用图形学实现绚丽效果)回复于 2005-02-24 18:59:07 得分 60
选择“二进制兼容”!Top
2 楼zyl910(编程的乐趣在于编程控制硬件,与用图形学实现绚丽效果)回复于 2005-02-24 19:00:22 得分 0
工程->属性
部件
二进制兼容
Top
3 楼viena(维也纳N02)回复于 2005-02-24 19:03:58 得分 20
dll工程->属性
部件
二进制兼容
如果修改了比如函数的参数,
就必须重新引用DLL了Top
4 楼lzhm(http://lzhm.net)回复于 2005-02-24 21:02:54 得分 0
选了2进制兼容,生成dll文件的时候报错
==============================
在类模块'DbTools'中'ExeQuery'有参数,并且/或返回类型在版本兼容不见中类似的声明不兼容。
原始定义:
Function ExeQuery(ByVal sqlStr As String, errStr As Variant, Optional ByVal CursorType As Integer, Optional ByVal LockType As Integer) As ADODB._Recordset
当前定义:
Function ExeQuery(ByVal sqlStr As String, errstr As Variant, Optional ByVal CursorType
As Integer, Optional ByVal LockType As Integer) As ADODB.Recordset
==============================
让选择是否保留兼容性。
我这个ExeQuery方法一直都没有改动过,不知道为何出现这个问题,还请帮忙解答,多谢。Top
5 楼babyt(阿泰)回复于 2005-02-24 21:34:56 得分 20
可能因为大小写导致的,这种情况下选第一项就性了,没关系的Top
6 楼zyl910(编程的乐趣在于编程控制硬件,与用图形学实现绚丽效果)回复于 2005-02-24 21:37:00 得分 0
多了个“_”
ADODB._Recordset
ADODB.RecordsetTop
7 楼lzhm(http://lzhm.net)回复于 2005-02-25 09:11:56 得分 0
我的代码里面,确实没有出现过 ADODB._Recordset,从以前的版本,到现在的修改,那个方法已经很长时间没有修改过了。Top
8 楼lzhm(http://lzhm.net)回复于 2005-02-26 16:00:22 得分 0
多谢各位指点。Top
9 楼lzhm(http://lzhm.net)回复于 2005-02-26 16:13:44 得分 0
测试Top




