日期:2014-05-17  浏览次数:20933 次

c#开发ic刷卡器。
现在的问题是,我需要读11位和14位的ic卡,8位的我可以读。这里的11位,14位和8位指的是IC卡的id。怎么编写代码使读卡器能读11位或者14位的,求源码。
下面的三个图就是源码和,例子。
int sector = 3;
            st = Program.rf_card(icdev, 0, snr);    //寻卡
            MessageBox.Show("寻卡:" + st);
            if (st != 0)
            {
                listBox1.Items.Add("rf_card error");                                              
            }
            else
            {
               
                byte[] snr1 = new byte[8];
                listBox1.Items.Add("rf_card right!");
                //功 能: 将 16 进制数转换为 ASCII 字符。 参 数: hex: 16 进制数 a: 输出的 ASCII 字符 length: 16 进制数的长度
                Program.hex_a(snr, snr1,4);
                listBox1.Items.Add("IdCard=802BB4B2522304==" + System.Text.Encoding.Default.GetString(snr1));
            }
            st = Program.rf_authentication(icdev, 0, sector);  //验证密码
            if (st != 0)
            {
                listBox1.Items.Add("rf_authentication error!");
            }
            else
            {
                listBox1.Items.Add("rf_authentication right!");
            }