现在在机器上接有两个输入设备,都在键盘口上接着,一个用来刷卡,也可以手工输入数字,一个是键盘,现在有一问题,在vfp中如何可以分辩出输入的内容是由键盘还是四刷卡设备上输入的呢???另外就是如何让我的程序后台监控这个设备,在接收到刷卡设备输入内容后,提示出来~~~~~谢谢高手。
1、刷卡设备输入与手工输入有区别码吗?
2、可以用判断录入速度来区分,录入的速度小于1秒,应为刷卡,反之为手工。
3、想临控这个设备,必须有这个设备的接口程序。
判断时间,卡号一般都是挺长的吧,而且都是定长的,比如说卡号是15位,读卡可以在短时间内完成,而键盘输入则需要一定的时间
KB=0
STIME=SECONDS()
READNO=CHR(SPACE)
FOR I=1 TO 15 &&读入卡号或键盘输入
KB=0
DO WHILE KB=0
KB=INKEY()
ENDDO
IF KB=ESCAPE .OR. KB=ENTER .OR. KB<0
RETURN
ELSE
READNO=READNO+CHR(KB)
ENDIF
ENDFOR
ETIME=SECONDS()
IF ETIME-STIME>1 &&该值根据调试确定,该值是一个刷卡能完成而键盘输入不可能完成的时间值
wait 该值为键盘输入 wind
ELSE
wait 该值为读卡输入 wind
ENDIF
RETURN READNO
具体代码无现实意义