如何在C#项目中使用ZK4500指纹扫描仪SDK
How to use ZK4500 Fingerprint Scanner SDK in C# Project
我正在用 C# 开发一个项目,我想使用用户的指纹登录/验证用户。
我买了一台 ZK4500 指纹扫描仪,并从 http://www.zkteco.com/product/ZK4500_238.html 那里获得了它的 SDK。SDK 处于C++状态。
那么,如何将此 SDK 与我的 C# 项目集成以执行所需的功能呢?
您需要添加对 ZKFPEngXControl 的引用,该引用将显示在 COM 类型库下。之后,您可以使用 ZKFPEngX 类来执行任何您需要的操作。
using ZKFPEngXControl;
然后
ZKFPEngX fp = new ZKFPEngX();
fp.SensorIndex = 0;
fp.InitEngine(); // Do validation as well as it returns an integer (0 for success, else error code 1-3)
//subscribe to event for getting when user places his/her finger
fp.OnImageReceived += new IZKFPEngXEvents_OnImageReceivedEventHandler(fp_OnImageReceived);
您可以编写自己的方法fp_OnImageReceived来处理事件。 例如,您可以在该方法中编写此内容;
object imgdata = new object();
bool b = fp.GetFingerImage(ref imgdata);
其中 imgdata 是一个字节数组。您还可以在 ZKFPEngX 中使用其他方法来实现您的目标。请记住在表单关闭时关闭引擎。
fp.EndEngine();
您可以在 OnEnroll(bool ActionResult, object ATemplate)
Event 下存储指纹。执行BeginEnroll()
时将调用此事件。
//Add an event handler on OnEnroll Event
ZKFPEngX x = new ZKFPEngX();
x.OnEnroll += X_OnEnroll;
private void X_OnEnroll(bool ActionResult, object ATemplate)
{
if (ActionResult)
{
if (x.LastQuality >= 80) //to ensure the fingerprint quality
{
string regTemplate = x.GetTemplateAsStringEx("9");
File.WriteAllText(Application.StartupPath + "\fingerprint.txt", regTemplate);
}
else
{
//Quality is too low
}
}
else
{
//Register Failed
}
}
您可以尝试在事件OnCapture(bool ActionResult, object ATemplate)
下验证指纹。将手指放在扫描仪上时将调用此事件。
在 OnCapture 事件上添加事件处理程序:
x.OnCapture += X_OnCapture;
在调用事件时验证指纹(将手指放在扫描仪上(:
private void X_OnCapture(bool ActionResult, object ATemplate)
{
if (ActionResult) //if fingerprint is captured successfully
{
bool ARegFeatureChanged = true;
string regTemplate = File.ReadAllText(Application.StartupPath + "\fingerprint.txt");
string verTemplate = x.GetTemplateAsString();
bool result = x.VerFingerFromStr(regTemplate , verTemplate, false, ARegFeatureChanged);
if (result)
{
//matched
}
else
{
//not matched
}
}
else
{
//failed to capture a valid fingerprint
}
}
相关文章:
- OpenSSL fips in C++ wrapper Library 如何?错误:指纹不匹配
- 如何在 c++ 中计算对象的哈希/校验和/指纹?
- 如何以编程方式检测登录过程(人脸登录、指纹、密码等)
- 指纹读取器 - 从 C# 代码创建事件处理程序到C++的问题
- 如何在C#项目中使用ZK4500指纹扫描仪SDK
- 我如何计算摩根指纹计数为numpy.array
- 如何在 c++ 中从证书文件导出指纹
- 将指纹(十六进制格式)转换为图像
- 错误C2664:无法转换参数(指纹传感器检测)
- DHCP指纹的HashMap实现
- 指纹注册使用WinBio,样本号
- 剽窃检测-筛选指纹冲突
- 使用Windows生物识别框架或任何其他方法通过.Net访问指纹读取器
- 检查数据库中的指纹
- 使用Chromaprint时出现空白声学指纹
- 指纹SDK经验
- 如何为图像创建唯一的指纹
- 在c++中,指纹调用会导致段错误
- 我可以用GT511C1代替GT511C3指纹扫描仪吗?
- 打开3D指纹(转换为2D)