C语言动态库函数中的 UChar * Result 参数怎么用 ? (50分)

  • 主题发起人 主题发起人 ccweifen
  • 开始时间 开始时间
C

ccweifen

Unregistered / Unconfirmed
GUEST, unregistred user!
C语言:
int ReclaimCard(HANDLE icdev , LPCSTR UserPassword ,BOOL BeepEnable,
UCHAR *Result ,BYTE CardType )
功能:收卡
参数:
icdev:(in)串口设备句柄
UserPassword:(in)用户密码(与初始化系统卡时一致),其长度为8
BeepEnable:(in)在成功回收一个扇区之后是否让蜂鸣器鸣叫一声,TRUE:鸣叫,FALSE:
不鸣叫
Result:(out)是一个包含16个字符元素的字符数组,用以记录每个扇区被会回收的结果,
1:表示成功回收。
CardType:(in)卡类型
返回值:成功返回0,小于0则失败

我这样调用后总是出现一个内存错误,函数执行成功的(有鸣叫声)
Function ReclaimCard(icdev:integer ;UserPassword :PChar ;BeepEnable:Boolean ;
Rst: PUChar ;CardType:Byte):integer;Stdcall ;External 'xxx.dll' ;

Result 参数怎么用?
 
PUChar? 有这种东西吗 试试PChar行不行
 
windows单元中
UChar=Byte ;
PUChar=^Byte ;
 
一般来说,加U字表示无符号,加P字表示指针,
所以,楼上的解释是对的,呵呵,
 
好像是这样的
 
但在windows单元中申明的
UChar=Byte ;
PUChar=^Byte ;
用Byte为何就不行?
 
多人接受答案了。
 
后退
顶部