+ -
当前位置:首页 → 问答吧 → C++传地址转成delphi

C++传地址转成delphi

时间:2011-11-23

来源:互联网

现有一个C++的demo程序,里面有这样一个函数声明:
int STDCALL PlayerExtProc(HPLAYER hPlayer, unsigned int nType, unsigned int nParam1, unsigned int nParam2);
在C++de demo中调用函数时是这样写的:
PlayerExtProc(m_hPlayer,101, (unsigned int)"admin", (unsigned int)"admin");


我转成delphi是这样的,声明:
function PlayerExtProc(hPlayer:HPLAYER;nType:integer;nParam1:integer;nParam2:integer):integer;stdcall;external 'XXX.dll';
这样调用:
var 
  s1,s2:string;
  s1:='admin';
  s2:='admin';
  PlayerExtProc(m_hPlayer,101,integer(@s1),integer(@s2));

但是这样调用不行,求达人指教,谢谢啦!

作者: yqfsan   发布时间: 2011-11-23

var  
  s1,s2:pchar;
  s1:='admin';
  s2:='admin';
  PlayerExtProc(m_hPlayer,101,integer(s1),integer(s2));

作者: pathletboy   发布时间: 2011-11-23

学习了。谢谢1楼。

作者: Terony   发布时间: 2011-11-23