fgypblt 发表于 2006-6-27 14:22

[求助]powerbuild调用c++写的dll动态库

dll文件-testa.dll<BR>int test(int a,int b,unsigned char* c,int* d)其中<BR>指针c 、d在pb编程中如何使用?<BR><BR>pb编程,这样使用报错了:<BR>定义:Function int test(int a,int b,string c,int d) LIBRARY "testa.dll"<BR>调用:<BR>string ls_result//结果文本<BR>int li_ret,li_resulen//结果位数<BR>ls_result=space(9)<BR>li_resulen=0//不妥,不知怎么用?<BR>li_ret=test(3,6,ls_result,li_resulen)//报错<BR>if li_ret=0 then messagebox('结果','testa.dll得到'+ls_result)<BR><BR>请不吝指导。[em06]

love_2008 发表于 2006-6-29 12:47

<P>在PB中用REF STRING C 接受试一试</P>

fgypblt 发表于 2006-7-7 09:30

ref是对的。已解决

fgypblt 发表于 2006-7-10 09:57

<P>一些感想。<BR>这次遇到的问题,其实本来我的代码是对的,后来在排除function定义错误后,还是无法达到设计要求,活很紧,所以当时真的急了,左试右试,就得到‘<STRONG>[求助]powerbuild调用c++写的dll动态库’</STRONG>中的junk代码了,后来找到dll文件脱壳工具,反编译为汇编代码,看的头大,终于大致发现设备dll文件的兼容性问题,通过与厂方软件集成工程师协调后方彻底解决。<BR>本来使用操作系统自带文件也可满足此次工程调试需要的,方法不止一种。所以,很多基础性代码包括针对底层开发的储备还是要有。<BR><BR>呵呵 。。。。。</P>

页: [1]

编程论坛