磁卡读写程序问题
HCE302型号的磁卡读写机,在程序中控制读写机时出现错误,望帮忙指正。
我使用的开发工具是PowerBuilder 9.0,代码如下(函数已经申明):
long ll_rc
string lsz_read
//打开端口
ll_rc = HCE300_Open(1)//读写机已经接到COM1上
if ll_rc < 0 then
messagebox("提示" ,"无法打开端口!",exclamation!,ok!)
return
end if
//读取卡号
ll_rc = HCE300_Read(2,lsz_read)
if ll_rc = 0 then
messagebox("提示","当前卡号是:" + lsz_read ,information!,ok!)
end if
//关闭端口
ll_rc = HCE300_Close()
以上代码可以正确读出卡号,但是:
1.如果读卡之前执行函数HCE300_SetShowDialog(1),读卡完毕后出现错误:“读磁卡-请划卡...00:00:02:PB90.EXE-应用程序错误”
2.如果读卡之前执行函数HCE300_SetShowDialog(0), 读卡完毕后出现错误:“ShowForm:PB90.EXE-应用程序错误”
请各位DX给瞧瞧!
问题点数:20、回复次数:2Top
1 楼rodgerwu()回复于 2005-08-02 23:08:13 得分 10
这不是你的问题,,, 是HCE厂商提供的DLL问题或兼容性问题.
一般而言, 读写磁条卡,没必要用到其提供的HCE300_SetShowDialog(int)函数.Top
2 楼j9dai(翔)(DoItNow)回复于 2005-08-03 08:57:00 得分 10
把打开端口,读卡号,关闭端口分开写在三个按钮Clicked事件里试试
还有把lsz_read用Space()分配内存Top




