当前位置: 代码迷 >> PB >> ◆如何判断字符串是由「刷卡器」刷入还是由「人工」输入
  详细解决方案

◆如何判断字符串是由「刷卡器」刷入还是由「人工」输入

热度:158   发布时间:2016-04-29 09:22:31.0
◆怎么判断字符串是由「刷卡器」刷入还是由「人工」输入
有一个窗口w_a 里面有一个数据窗口dw_bb

怎么判断一个数据窗口的一个字段里的字符串是由 刷卡器 刷入还是由 人工 输入

刷卡器不设置特定的字符

听说是可以用输入的时间间隔来判断
请问该怎么判断时间间隔



------解决方案--------------------
SecondsAfter ( time1, time2 )
DaysAfter ( date1, date2 )
------解决方案--------------------
这个字段应该不会直接地自动地读刷卡器的吧?还是要有一段代码去读的。
刷卡器不设特定的字符,也许数据窗口中可以设
另外如果人工输入,每敲一个字应该会trigger一个事件,具体是哪个事件忘了。
------解决方案--------------------
根据输入的速度,每个按键之间的间隔
------解决方案--------------------
刷卡器一般也是串到键盘口来输入一串数字的。所以你说的判断时间其实也差不多。

尝试在key事件里记录时间吧。再判断。不晓得对不对。
------解决方案--------------------
读卡器会不会触发pbm_char、pbm_keydown、pbm_keyup之类的事件?
如果不会,那这就是解决问题的方法。

没有做过读卡器。

------解决方案--------------------
如果不会触发pbm_keydown、pbm_keyup之类的事件,那就记录这些事件就行了。如果会触发,还是记录这些事件,不过需要判断每次触发这些事件之间的时间间隔,如果时间间隔短的'非人'那就是刷卡器喽
  相关解决方案