我已经成功地构建了一个程序,可以在Linux上使用Qt读取Mifare1K卡。所以现在,我希望它能在Windows上运行。据我所知,Windows上没有PCSC-Lite端口,我需要使用WindowsSDK中的winscard。我已经下载了它,但我在Windows中(使用MingW)从我的Qt中得到了很多undefinedreference错误。例如:release/ReadCard.o:ReadCard.cpp:(.text+0x48e):undefinedreferenceto`pcsc_stringify_error'release/ReadCard.o:ReadCard.cpp
我正在尝试通过PcSc-Sharp创建一个用于在Mifare1K卡上写入/读取的c#类.我得到了“ATR”数据,但我不知道如何从中生成Ndef消息。我还调查了Mifare-图书馆,但样本似乎有问题(无法在每个“卡附加事件”中读取扇区)。所以我的问题是:有人知道Windows的工作方法/库,它可以为我做低级的事情吗?编辑:我尝试了PcSc包中的Mifare样本。我无法加载key:using(varcontext=newSCardContext()){context.Establish(SCardScope.System);varreaderNames=context.GetReaders
在Windows>=XP上使用winscard只有一个PCSC阅读器的句柄和上下文,是否有某种方法可以获取其设备实例ID或可以在中使用的其他内容SetupDi*API,用于找出为所述读卡器加载了哪个驱动程序。SCardGetReaderDeviceInstanceId仅在Windows8上可用,所以不幸的是不适合我。作为B计划,可以使用智能卡读卡器类GUID在SetupDi中枚举所有智能卡读卡器。但是我需要一个unique属性来关联SCard*API和SetupDi*API之间的阅读器。例如,序列号听起来不错,但并非所有制造商都使用它。有什么想法吗? 最佳答
我在我的Dotnet智能卡应用程序中使用winscard.dll。我的阅读器Omnikey5321具有接触式和非接触式界面,它们被检测为两个不同的阅读器。非接触式设备的名称中包含字母“CL”。我可以毫无问题地手动选择读者并与他们一起做我需要做的一切。但是,是否有一种可靠的方法,使用SCardGetAttrib或其他调用来确定这些读卡器中的哪些支持ISO14443-即EMV非接触式?我最终想要一个快速的“选择非接触式设置”按钮,该按钮足够通用以适用于所有PC/SC阅读器,因此如果没有这样的界面,我也可以禁用非接触式选项。 最佳答案 不
我一直在使用pcsc-sharp库开发一个小型智能卡扫描仪应用程序。该应用程序作为控制台应用程序运行时工作正常,代码如下:usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;usingSystem.Configuration;usingSystem.IO;usingSystem.Drawing;usingSystem.Drawing.Drawing2D;usingSystem.Drawing.Text;usingSystem.Drawing.Printing;usingSystem.
我们购买了ACR122USBSDK用于NFC测试。我们想为ACR122U-A2NFC阅读器构建测试桌面应用程序。我们正在MicrosoftWindows7平台上用Java开发它。我们预计,为了从Winscard.dll使用PC/SC,我们需要进行JNI调用。为此,应准备用于JNI调用的C/C++包装器库。我认为这应该是SDK的一部分,因为示例应用程序引用了JNI包装器Jacspcsc.dll,但该库不存在。有没有人有类似的经历?是否有可用于Winscard.dll的JNI包装器?谢谢斯腾 最佳答案 如果您为阅读器安装了PC/SC驱动
我正在开发一个Java应用程序,它使用smartcardio来处理智能卡。必须可以让一个人移除其USB读卡器,然后再次插入,而无需再次启动小程序。我正在使用terminals()和waitForChange()方法来检测终端变化,它在Linux、MacOS和Win7上运行良好。但在Windows8(和仅Windows8)上,在删除最后一个终端后,这些方法会抛出SCARD_E_NO_SERVICECardException,并且不再检测变化。我不确定它指的是什么“服务”。但我认为这是在我调用TerminalFactory.getDefault()以获得TerminalFactory单例时
我目前正在从事一个项目,该项目要求我将JavaCard应用程序小程序(.cap)文件加载到JavaCard。我们的框架是基于VisualC++和PCSC的,因此我们需要将同一个小程序加载到一系列JavaCards中。有谁知道如何处理?我的意思是,我应该从哪里开始。谢谢! 最佳答案 您是对的,这不是一项微不足道的工作。不同的javacard之间是有区别的,但是一般需要做4件事:初始化与卡的安全通信(因为许多javacard是“全局平台”卡,它们需要安全通道)发送一条命令说“我想安装一个小程序”发送要安装的小程序的二进制数据发送二进制数
我正在尝试向智能卡发送命令。我用GemaltoIDBridgeCT30(PCTWINreader)和一个IDBridgeK30通过USB连接到Android设备。我尝试通过USB发送SELECTAPDU命令:booleanclaim=openedConnection.claimInterface(usbInterface,true);byte[]data=newbyte[]{(byte)0x00,(byte)0xA4,(byte)0x04,(byte)0x0C,(byte)0x07,(byte)0xA0,(byte)0x00,(byte)0x00,(byte)0x01,(byte)0x
我正在尝试使用带有以下代码的javax.smartcardioAPI加载智能卡终端:publicCardTerminalgetReadyCardTerminal()throwsCardException{TerminalFactoryfactory=TerminalFactory.getDefault();CardTerminalsterminals=factory.terminals();Listlist=terminals.list(State.CARD_PRESENT);while(list.isEmpty()){terminals.waitForChange(1000);lis