ACR122设备编程示例找不到读取器
本文关键字:找不到 读取 编程 ACR122 | 更新日期: 2023-09-27 18:26:58
我正在尝试使用SDK附带的C#设备编程示例在Windows 8上试用ACR122读卡器。当我启动示例时,我在可用设备列表中没有看到读卡器。
我不认为这是一个一般的驱动程序问题,因为配置读取器的工具(预编译的二进制文件)列出了读取器并允许连接到它
我是C#和.NET的新手。如果有人能给我一些关于判断问题的建议,我会很高兴。如果您需要更多信息,我会很乐意为您提供。
我也不是专家,我目前正在使用ACR122U阅读器,样本也不太适合我。但是,我能够写一个小C#程序,这样我就可以在智能卡上读/写少量文本(转换为十六进制)。所以我建议你试着自己写,就像我一样,我会给你一些让我开始的代码(我使用了pcsc sharp dll):
using PCSC;
namespace SmartcardCheck
{
class Program
{
static void Main(string[] args)
{
using (var context = new SCardContext())
{
context.Establish(SCardScope.System);
string[] readerNames = null;
try
{
// retrieve all reader names
readerNames = context.GetReaders();
// get the card status of each reader that is currently connected
foreach (var readerName in readerNames)
{
using (var reader = new SCardReader(context))
{
Console.WriteLine("Trying to connect to reader {0}.", readerName);
var sc = reader.Connect(readerName, SCardShareMode.Shared, SCardProtocol.Any);
if (sc == SCardError.Success)
{
DisplayReaderStatus(reader);
}
else
{
Console.WriteLine("No card inserted or reader is reserved exclusively by another application.");
Console.WriteLine("Error message: {0}'n", SCardHelper.StringifyError(sc));
}
}
}
}
catch (Exception)
{
if (readerNames == null)
{
Console.WriteLine("No readers found.");
return;
}
}
Console.ReadKey();
}
}
}
}
希望它能帮助你:)
ACR122不被Windows视为NFC(近程)设备,它是一种能够读取NFC卡的智能卡设备。要在现代应用程序中或通过WinRT API使用它,您实际上需要使用Windows 8.1,它引入了对智能卡的支持。