data[i] = 0;
for (i = 0; i < 32; i++)
buff[i] = 0;
st = MifareOneHelper.rf_read(icdev, sec * 4 + 1, data);
if (st == 0)
{
SerialInterfaceHelper.hex_a(data, buff, 16);
txtCardID.Text = System.Text.Encoding.ASCII.GetString(buff);
lblMsg.Text = "读取卡号成功!";
}
else
lblMsg.Text = "读取卡号失败!";
//test method
//if (string.IsNullOrEmpty(txtCardID.Text))
//{
// lblMsg.Text = "读取数据失败!";
//}
//else
//{
// lblMsg.Text = string.Format("读取数据:{0}!", txtCardID.Text);
//}
}
注意要添加引用:using System.Security;
在这里注掉了测试代码,使用了串口通信和读卡代码。
2. 设置封装原始读卡器Dll的透明属性。
设置M1读卡器帮助类MifareOneHelper的透明属性为:[SecurityCritical],同时设置调用的方法MifareOneHelper.rf_read的
透明属性为[SecurityCritical]。
设置串口通信帮助类SerialInterfaceHelper的透明属性为:[SecurityCritical],同时设置调用的方法SerialInterfaceHelper.hex_a的
透明属性为[SecurityCritical]。
完整代码已提供,还有2个地方需要注意的是,客户端如果安装ActiveX失败,则把运行ActiveX的地址加入到信任站点里,
信任站点的安全级别降低到最低或者设置信任站点关于ActiveX的选项。
打包下载地址 http://www.easck.com/s/1hqlCsq4










