Winform开发框架之读卡器

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/u013408075/article/details/41960063

在我们开发一些项目的时候,一般需要一些外围的设备进行数据处理,如ID/IC读卡器获取卡号、激光条码扫描枪、USB摄像头、USB方式的小票据打印机(POS打印机)、USB来电录音盒、普通打印机等一系列附属设备。借助这些设备,可以使我们的业务流程更严谨,输入数据更方便,或者能够一些特殊的数据等功能。本文主要介绍其中的ID读卡器(IC读卡器)快速读取卡号,以及实用激光条码枪的条码扫描录入功能,后面的一些硬件设备的处理,后续文章在继续介绍。

1、设备介绍

前面介绍的设备,在很多场合上都可能用到,如我的会员管理系统里面,就需要用到下面的设备处理。

本文主要针对性了解ID读卡器和条码枪的设备数据处理,这两种设备虽然不同,但是它们相似的地方就是都支持在光标处录入数据的,就有点类似我们的键盘快速录入一样,当然激光条码枪也支持很多种方式的事件处理操作,这是后话。

展开阅读全文

读卡器读卡器读卡器读卡器读卡器读卡器读卡器读卡器读卡器读卡器

06-15

读卡器提供的接口函数中有如下两个,它们的功能是把密码装到读卡器中rnrnint rf_load_key(int icdev,unsigned char _Mode,unsigned char _SecNr,unsigned char *_NKey);rnrn功 能:将密码装入读写模块RAM中rnrn参 数:icdev:通讯设备标识符rnrn _Mode:装入密码模式,同密码验证模式mode_authrnrn _SecNr:扇区号(M1卡:0~15; ML卡:0)rnrn _Nkey:写入读写器中的卡密码rnrn返 回:成功则返回 0rnrn 例://key A and key Brnrn unsigned char tk[6]=0xa0,0xa1,0xa2,0xa3,0xa4,0xa5;rnrn /* 装入1扇区的0套A密码 */rnrn if((rf_load_key(icdev,0,1,tk))!=0)rnrn rnrn printf("Load key error!");rnrn rf_exit(icdev)rnrn exit(1);rnrn rn---------------------------------------------------------------rnrnrnint rf_load_key_hex(int icdev,unsigned char _Mode,unsigned char _SecNr,char *_NKey);rnrn功 能:向读写器中装入十六进制密码rnrn参 数:icdev:通讯设备标识符rnrn _Mode:密码验证模式rnrn _SecNr:扇区号(0~15)rnrn _Nkey:写入读写器中的卡密码rnrn返 回:成功则返回 0rnrn 例:/* 装入1扇区的A密码|0套 */rnrn if((rf_load_key_Hex(icdev,0,1,"a0a1a2a3a4a5"))!=0)rnrn printf("Load key error!");rnrn rf_exit(icdev);rnrn exit(1);rnrn rnrn现在知道卡密码是12个F,用厂商自带的演示程序读出的,不知是16进制还是字符串,现在我要调用这两个函数中的一个,问他们在C#中应该怎么声明,参数类型应该转变成什么样的.最关心最后一个参数.因为前三个我试的应该没问题rnrn我现在是这样做的rn声明时把最后一个参数声明成ref byte[]型的.rn然后调用时这样的rnbyte[] bt = new byte[]0xf,0xf........一共12个rnrnrf_load_key_hex(...... ,bt);rn可是不好用...返回值不为0,期待高手.................................... 论坛

没有更多推荐了,返回首页