//Get FTM Mode
//ftmmode  =1:FTM Mode, =0:Normal Mode    nCount:retry times
BOOL DLLEXPORT GETFTMMODE(byte* ftmMode ,int nCount);//Set FTM Mode
BOOL DLLEXPORT SETFTMMODE(byte ftmMode ,int nCount);
并且这两个函数封装在DLL库中,函数体,我无法看见。如何把以上两个函数转换成DELPHI中的定义。我自己已经试过把BOOL DLLEXPORT SETFTMMODE(byte ftmMode ,int nCount);
在DELPHI中定义成,下面的定义。
SETFTMMODE(var ftmMode:byte ,int nCount):boolean;stdcall ;external 'Louis_ut_esn_dll';
调用的时候
SETFTMMODE(a,3);编译的时候没问题,但是当调试程序的时候会提示“找不到'Louis_ut_esn_dll中具体路径的”等的错误。我怀疑还是函数的申明不对。
请大家帮忙解决。

解决方案 »

  1.   

    SETFTMMODE(var ftmMode:byte ,int nCount):boolean这时候很明显的 应该是需要传指针进去的 因为后面的 nCount可能就代表这段BUFFER的长度。。SETFTMMODE(ftmMode: pbyte ,nCount:Integer):LongBool;stdcall;
      

  2.   

    我已经说了nCount 代表的是RETRY TIMES,而不是BUFFER的长度。
    请大家帮忙转换
      

  3.   

    function SETFTMMODE(ftmMode:byte;nCount:integer):boolean;stdcall ;external Louis_ut_esn_dll;
    function GetFTMMODE(ftmMode:Pbyte;nCount:integer):boolean;stdcall ;external Louis_ut_esn_dll;set函数不要用var,它只是值传递;get的ftmMode要给一个byte类型变量的地址,如@byte1;