【发布时间】:2019-08-22 12:37:00
【问题描述】:
我正在尝试使用 ACR 122U NFC 读卡器读/写 NFC NTAG。我在SCardTransmitreturn values junk 或 return code 6 中不断收到错误。我需要知道要在SCardTransmit 方法的 SendBuff 中传递的 apdu 命令值是什么
我检查了我通过谷歌搜索找到的 apdu 值,但到目前为止我还没有找到明确且有效的解决方案
我在网上查了很多解决方案,尝试了不同的缓冲区值
ClearBuffers();
SendBuff[0] = 0xFF; // CLA
SendBuff[2] = 0x00; // P1: same for all source types
SendBuff[1] = 0x00; // INS: for stored key input
SendBuff[3] = 0x00; // P2 : Memory location; P2: for stored key input
SendBuff[4] = 0x00; // P3: for stored key input
当我包含所有值时,我得到了 6 个返回值,最后我在 Received Buffer 中得到了一些垃圾数据
【问题讨论】:
-
您是否初始化了
SCARD_IO_REQUEST结构,还请提供minimal sample 或至少提供您遇到错误的代码详细信息。 -
这个解决方案对你有用吗?social.msdn.microsoft.com/Forums/vstudio/en-US/…
-
@DrakeWu-MSFT 请告诉我如何从 SCardTransmit 读取 SW1 和 SW2 值。我只从 SCardTransmit 调用中得到
6的返回值 -
我不知道代码细节,所以我无法判断这里出了什么问题。但是你可以参考这个代码示例。 gist.github.com/im-infamou5/4681713
-
@DrakeWu-MSFT 我有代码,它的功能很好。我只对用于验证 NTAG 213 ISO 标签块的 APDU 命令感兴趣。如果很快发现除了 Authenticating 之外的读写命令,那就太幸福了