调用.dll操作IC卡

BlueSea_W 2001-07-26 10:26:07
我手上有个.dll,是操作IC卡的,供应商提供了一段源码介绍,但我有所不知,请指教?

例:
Power_UpV(HGEM:HICC):Word;{$ifdef Win32}far;stdcall{$Endif};
{卡片下电}
......

我搞不清楚此处的“HICC”,是何物,有这种类型吗?这种过程怎么调用?

...全文
122 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
xpmao 2001-08-01
  • 打赏
  • 举报
回复
To BlueSea_W:
不好意思,好几天都没有过来了,希望没有耽误你的工作。

具体的操作流程应该是这样的:
Procedure MyFunc()
var
hIcc :HGEM;
begin
//初始化串口
InitComPort('COM1');//你没有给出函数的原型,只能如此假设

//因为原型为ICC_OpenV(LpName:Pchar;var hGEM:hicc):Word;stdcall;
//所以需要传递hIcc进去,类似于 c/c++里的指针!!!
ICC_OpenV('LpName',hIcc);

Power_UpV(hIcc);
//Do Something Here!
Power_Down(hIcc);

//关闭串口
CloseCom();
end;
BlueSea_W 2001-07-29
  • 打赏
  • 举报
回复
valhalla(批评派)
但 ICC_OpenV{选择卡型} 是DLL的调用,HGEM(设备句柄)是局部变量,如何能给:

Power_UpV(HGEM:HICC):Word;{$ifdef Win32}far;stdcall{$Endif};
{卡片下电}


valhalla 2001-07-29
  • 打赏
  • 举报
回复
对呀.ICC—OpenV是返回hGEM句柄.HICC可能是自定义的函数类型,等于WORD.
估计ICC_OpenV返回的是表示初始化成功与否的值,其中的函数变量HGEM就是设备句柄。
BlueSea_W 2001-07-29
  • 打赏
  • 举报
回复
xpmao 你好:

(1)函数是有一个,但:

ICC_OpenV(LpName:Pchar;var hGEM:hicc):Word;{$ifdef Win32}stdcall{$Endif};
{选择卡型}

此处仍有 hGEM:hicc .

(2)源码变量说明中有提到:
hGEM :Word;
ICCardNo:String;
ComPort:pchar;
...

(3)源码函数说明中有提到:
InitComPort:boolean;
PowerDown:boolean;
SetInitParams;
ReadCardNo:String;

(4)上头对此追问很紧,这两天已经黑脸了,请赐教,感激不尽!!!
xpmao 2001-07-27
  • 打赏
  • 举报
回复
HICC是句柄,你看有没有一个OpenICC,或OpenCom或InitComm等函数,应该会返回一个HGEM类型的句柄,把他保存起来就可。

5,392

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧