当前位置: 代码迷 >> PB >> PB调用VC dll文件解决方案
  详细解决方案

PB调用VC dll文件解决方案

热度:17   发布时间:2016-04-29 08:57:33.0
PB调用VC dll文件
//VC代码
extern "C" __declspec(dllexport) long __stdcall TT_data(long aa,char * bb)
{
  bb="我爱中国";
  return (1) ;
}

//PB代码
function long TT_data(long aa, ref string bb) LIBRARY "data.dll";

integer li_i
long ll_aa
string ls_bb

li_i = TT_data(8,ls_bb)

if li_i = 1 then
  messagebox("",ls_bb)//ls_bb=我爱中国
end if

请各位老大帮忙看一下,本人自己用VC制作的dll用PB调试,TT_data外部函数返回正常,可ls_bb却无法返回"我爱中国",代码都可以执行的.

------解决方案--------------------
把bb="我爱中国"; 改为
strcpy(bb,"我爱中国") ;
或者
sprintf(bb,"我爱中国");
------解决方案--------------------
同意楼上所述
楼主C++还需要好好学习,指针字符串不能直接赋值的,要用strcpy
  相关解决方案