Zkemkeeper OnDisconnectedEvent在C#中未触发

时间:2018-08-30 06:53:09

标签: c# biometrics zkemkeeper

背景我有connected a window form application with a bio-metric attendance machine (ZKTeco K20 Model)。它已连接,但是OnDisconncted事件存在问题。

我有此代码段,在这里注册了onDisconnected事件,但不幸的是,它没有触发(无论何时关闭设备或拔出网络电缆)。

 public bool Connect_Net(string IPAdd, int Port)
        {   
            if (objCZKEM.Connect_Net(IPAdd, Port))
            {
                //65535, 32767
                //if (objCZKEM.RegEvent(1, 32767))//old
                if (objCZKEM.RegEvent(1, 65535))
                {
                    //MessageBox.Show("Connect_Net");
                    // [ 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.OnDisConnected += new _IZKEMEvents_OnDisConnectedEventHandler(objCZKEM_OnDisConnected);
                    objCZKEM.OnEnrollFinger += ObjCZKEM_OnEnrollFinger;
                    objCZKEM.OnFinger += ObjCZKEM_OnFinger;
                    objCZKEM.OnAttTransactionEx += new _IZKEMEvents_OnAttTransactionExEventHandler(zkemClient_OnAttTransactionEx);
                    //objCZKEM.OnAttTransactionEx += new _IZKEMEvents_OnAttTransactionExEventHandler(objServerInteraction.zkemClient_OnAttTransactionEx);
                    objCZKEM.OnAlarm += OnAlarm;
                    objCZKEM.OnNewUser += OnNewUser;
                    objCZKEM.OnKeyPress += OnKeyPress;

                }
                return true;
            }
            return false;
        }

其余事件,例如OnAttTransactionEx执行正常,但是每当我的考勤设备(Zketeco)关闭时,它都不会触发objCZKEM_OnDisConnected事件。设备上的此事件是否会关闭(考勤机)?还是我以错误的方式注册了它?

这里是link,其中是我通过教程获得的代码。

1 个答案:

答案 0 :(得分:0)

objCZKEM.OnDisConnected设计用于在软断开但硬断开时清除资源。从程序中,当您调用objCZKEM.disconnect时,将触发事件。

如果通过电线断开设备的连接,则不会触发任何事件。