Ⅰ 怎么把IC卡数据读取出来修改
不知道你用的是什么读写器,一般情况,随IC卡读写器,应该配送相应的API函数库,可能是静态的,
也可能是动态的,你在编程的时候,将相应的.LIB文件,加入你的工程,再加入相应的头文件(随机的盘里应该提供),如此,以可以直接调用该库的函数,进行IC卡的读写。
这是改ic卡密码的函数,使用c语言写的,应该有所帮助:
byte Pin_Change(byte *data,byte len)
{
sint ret;
Inst.DataToCard = data;
Inst.Le =0x08;
Inst.Lc = len;
Inst.Class =0x80 ;
Inst.Instruct = 0x5e;
Inst.P1 =0x01;
Inst.P2 =0x00;
Inst.port_indx = EXT_READER;
ret = SendICC(&Inst);
if(ret>=ICC_OK)
return TRUE;
else
{
if(ret==ICC_CARD_ERROR)
{
MmiUtil_Warning((char*)msgIccOPfail);
return FALSE;
}
else
return FALSE;
}
}
Inst为ic卡指令结构,其中data为密码信息.具体的指令,各种卡有类似的地方,但一定要厂商提供.如果没有,可以和厂商联系.SendICC()为发送指令的函数.如果是串口,可以使用串口指令.
Ⅱ 怎样给ic读卡器编程读取ic卡
厂家卖出的RFID读写器已经写好了读取程序的 一般读写器应用只要根据厂商提供的代码编写应用程序就好
Ⅲ java如何通过串口IC读卡器读取IC卡号
有IC卡读卡器的接口程序,自己编程就可以了
Ⅳ 如何用java编写通过IC卡读卡器读取IC卡的程序
使用java读卡例程,附件是YW-607读卡器的SDK,里面有java读写卡的例程读卡器SDK
Ⅳ 在网站上如何读取IC卡信息. 是不是要写插件实现
在网站上如何读取IC卡信息. 我们深圳峰华有三种方法
一、做activex插件简单一些。步骤:
1.假设读卡器用的是com1口,插件要做的事就是检测com1口上的数据。2.网页再通过接口函数获取数据。
二、c# 网页读取IC卡信息
1、做一个C/S的程序 监控你的刷卡器,捕获到IC卡号信息后 放到 数据库 2、网页写个定时器 扫描库 有就显示出来,并且将库信息删除了
三、IC需要机器才能读取数据
1、你现在需要的是拿到机器的串口号码 2、然后跟串口做通讯就得到数据了
Ⅵ 电脑读取ic卡芯片方法
1,读取
我们需要外接一个NFC Reader让Windows可以读取NFC卡片的内容。
因为特殊原因,我们选择了Sony rc-s380 NFC Reader。相关介绍
我们需要下载并安装NFC Port Software,以便我们可以顺利使用上述NFC Reader。
安装之后,我们需要去Github获取一个NFC Port Software的.Net封装包:tijins/NfcLib
解压并运行nfc_lib_sample之后我们可以看到这样一个WindowFrom程序。
private string GetNfcTag(List<byte[]> cardContentList)
{
List<byte> cardBytes = new List<byte>(); foreach(byte[] rowCardContent in cardContentList)
{
cardBytes.AddRange(rowCardContent.Take(4));
} byte[] cardUid = cardBytes.Take(8).ToArray(); string cardUidStr = Utility.ByteToHex(cardUid, 0, cardUid.Length); byte[] cardMaker = cardBytes.Skip(8).Take(8).ToArray(); string cardMakerStr = Utility.ByteToHex(cardMaker, 0, cardMaker.Length); byte[] memoryBytes = cardBytes.Skip(16).ToArray(); byte lockControlByte = memoryBytes[0]; byte lockByteCount = memoryBytes[1];//how many bytes are the lock bytes
byte[] lockBytes = memoryBytes.Skip(2).Take(lockByteCount).ToArray(); int nedfLengthByteIndex = 1 + lockByteCount + 1 + 1; byte ndefLength = memoryBytes[nedfLengthByteIndex]; if (ndefLength == 0)//Tag empty
return string.Empty; byte[] ndefBytes = memoryBytes.Skip(nedfLengthByteIndex + 1).Take(ndefLength).ToArray(); byte payloadHeader = ndefBytes[0]; byte payloadTypeLength = ndefBytes[1]; byte payloadLength = ndefBytes[2]; byte[] payloadType = ndefBytes.Skip(3).Take(payloadTypeLength).ToArray(); byte[] payloadBytes = ndefBytes.Skip(3 + payloadType.Length).Take(payloadLength).ToArray(); byte languageCodeLength = payloadBytes[0]; byte[] languageCode = payloadBytes.Skip(1).Take(languageCodeLength).ToArray(); byte[] tag = payloadBytes.Skip(1 + languageCode.Length).Take(payloadLength - languageCode.Length - 1).ToArray(); string tagHex= Utility.ByteToHex(tag , 0, tag .Length); string tagStr = Encoding.UTF8.GetString(tag); return tagStr;
}