问题: pb 调用dll 用delphi 怎么写?

解决方案1:

很久没写delphi了,我就文本打字给你写个例子吧,你试着调试下:
function uf_sendrcva(as_messagecode, as_message, as_knxx: String): String;
var
  pRcv, p_return: PAnsiChar;
begin
  pRcv := stralloc(4096);
  p_return = stralloc(4096);
  try
    StrPCopy(pRcv, as_knxx);
    StrCopy(p_return, SendRcvA(PAnsiChar(as_knxx), pRcv));
    //uf_sendrcva 你自己对应着改
    //memo2.Text := uf_sendrcva('G002', memo2.Text, memo2.Text);
  finally
    StrDispose(rRcv);
    StrDispose(p_return);
  end;
end;

解决方案2:

pb中的string对用delphi中用pchar类型,需要stralloc分配空间(对应pb的space)和strdispose释放空间。
 SendRcvA(PAnsiChar(pSend),PAnsiChar(pRcv));
对于pRcv之类用来接收返回的数据,你要申请变量 pchar类型,用stralloc分配后传入,你PAnsiChar(pRcv)强制转换传入,肯定不行

上一篇智能排班小软件,求高手相助
下一篇Activemq相关
明星图片
相关文章
《 pb 调用dll 用delphi 怎么写?》由码蚁之家搜集整理于网络,
联系邮箱:mxgf168#qq.com(#改为@)