我们计划为 Zkteco SDK 中提供的方法开发 ASP.Net 网络服务。
其中一项网络服务是连接到设备。调用“Connect_Net(string IPAdd, int Port)”方法后,连接成功,同样在该方法中,我们注册了如下几个事件:-
public bool Connect_Net(string IPAdd, int Port)
{
if (objCZKEM.Connect_Net(IPAdd, Port))
{
//65535, 32767
if (objCZKEM.RegEvent(1, 32767))
{
// [ Register your events here ]
// [ Go through the _IZKEMEvents_Event class for a complete list of events
objCZKEM.OnConnected += ObjCZKEM_OnConnected;
objCZKEM.OnDisConnected += objCZKEM_OnDisConnected;
//objCZKEM.OnEnrollFinger += ObjCZKEM_OnEnrollFinger;
objCZKEM.OnEnrollFingerEx += new _IZKEMEvents_OnEnrollFingerExEventHandler(ObjCZKEM_OnEnrollFingerEx);
objCZKEM.OnNewUser += ObjCZKEM_OnNewUser;
objCZKEM.OnFinger += ObjCZKEM_OnFinger;
//this.objCZKEM.OnVerify += new zkemkeeper._IZKEMEvents_OnVerifyEventHandler(ObjCZKEM_OnVerify);
objCZKEM.OnAttTransactionEx += new _IZKEMEvents_OnAttTransactionExEventHandler(zkemClient_OnAttTransactionEx);
}
return true;
}
return false;
}
但连接后,这些事件(OnEnrollFinger、On Clock-In 等)不会在 ASP.NET Web 服务中被调用。
类似的侦听器在 Windows 窗体应用程序中工作正常。
您能否就如何解决这个问题提出建议?,上述事件是否应该在后台线程中注册?如果是,那么该怎么做?
谢谢