vb 调用C写的动态库奇怪的问题!
我用VB调用C写的动态库,发现奇快的问题,在调试时函数返回为-21,编译后返回函数0,大家帮帮我啊。C函数:ret = JBC7K2_SetTime(g_devip,g_devport);
VB中声明:Public Declare Function JBC7K2_SetTime Lib "JBC7200.dll" (ByVal ip As String, ByVal port As Integer) As Integer
int WINAPI JBC7K2_SetTime(char *ip, int port) 本帖最后由 bcrun 于 2011-11-20 11:49:15 编辑
赞同,先按这个试一试 不行,我试过了啊 Public Declare Function JBC7K2_SetTime Lib "JBC7200.dll" (ByVal ip As String, ByVal port As long) As long
调用时参数不要用String要用比如String*10并且以CHR(0)结尾 本帖最后由 bcrun 于 2011-11-20 11:52:01 编辑 可以试试 你确信2次运行调用的是同一版本的dll吗?若没有把握,可用 “开始\程序\附件\系统工具\系统信息/软件环境/加载的模块”查看。很可能不是同一个路径的dll,原因也就是其中C代码本来不同,运行结果不同.
补充:VB , 基础类