主题:  dll在aw中调用出错

kentvis

职务:普通成员
等级:1
金币:2.0
发贴:17
#12004/12/15 9:39:34
我找朋友帮我用c++写了一个操作串口的函数,已经封装成dll,他在c里面测试都没问题,我在authorware中能成功导入里面的函数,但是一执行就出现非法操作,然后退出,哪位能帮忙看看,可能的话将它改成UCD?

有意者和我邮件联系,我会提供源代码和函数说明!

chenxh_bj@163.com

大家帮帮忙 :)



与人同乐

职务:管理员
等级:6
金币:18.0
发贴:3928
#22004/12/15 12:50:04
可能是在导入过程中使用了错误的类型声明。



kentvis

职务:普通成员
等级:1
金币:2.0
发贴:17
#32004/12/15 14:22:12
我朋友也怀疑是函数参数或者返回值中的类型声明有问题,但因为他不懂authorware,不知道那些类型是aw支持的,所以,请懂行的朋友能帮我看看,最好能将它编译成UCD,这样也方便大家以后使用,而不必在用要收费的directcom.x32了!



joyty

职务:普通成员
等级:1
金币:0.0
发贴:79
#42004/12/17 16:28:43
我用delphi做了一个DLL,delphi中调用正常,但AW中调用也出错!



joyty

职务:普通成员
等级:1
金币:0.0
发贴:79
#52004/12/17 16:34:51
导入AW时的类型声明应该不会错,AW中导入用户自定义函数(DLL)允许的参数类型:
byte unsigned 8 bit
word unsigned 16 bit
dword unsigned 32 bit
float 浮点型。
double 双精度型。
string  字符串型。
char  字符型。保存一个字符。
short 短整型(-2的8次方减1到2的8次方)
long 长整型(-2的32次方减1到2的32次方)
pointer 指针类型。指向内存空间的地址。
void 无符号型。