C/C++中的函数声明在PB中怎么调用?传递参数?
函数声明为:int_stdcallgetinfo(handledev,basic_info&info,unsignedlong&serialno);在powerbuild...
函数声明为:int _stdcall getinfo(handle dev,basic_info &info,unsigned long &serialno);在powerbuilder9.0中如何调用,参数列表中定义的有结构体,在PB中如果定义以及传递这三个参数进去?C中的数据类型怎么对应到PB中的数据类型?&,*,在函数声明中经常出现,怎么实现在PB中的调用呢?
有DLL文件,有DLL文档说明。 展开
有DLL文件,有DLL文档说明。 展开
1个回答
展开全部
&是传递时按照地址传递,对应pb中的ref(即reference),pb默认是按照值传递的,所以传递地址,需在参数前加ref
函数int _stdcall getinfo如果有返回值,比如int
function int int _stdcall getinfo(long dev, ref basic_info info,ref ulong serialno) library '动态库名称.dll'
无返回值的情况
subroutine int _stdcall getinfo(long dev, ref basic_info info,ref ulong serialno) library '动态库名称.dll'
注:动态库需要放置程序运行根目录或者system32目录下,否则可能需要输入完整路径,详细使用方法可查看pb自带帮助或者参考手册
函数int _stdcall getinfo如果有返回值,比如int
function int int _stdcall getinfo(long dev, ref basic_info info,ref ulong serialno) library '动态库名称.dll'
无返回值的情况
subroutine int _stdcall getinfo(long dev, ref basic_info info,ref ulong serialno) library '动态库名称.dll'
注:动态库需要放置程序运行根目录或者system32目录下,否则可能需要输入完整路径,详细使用方法可查看pb自带帮助或者参考手册
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询