2016-09-20 26 views
3

我在Zkemkeeper.dll中調用事件時遇到了麻煩。我已成功建立了連接,但是將手指放在傳感器上時不會觸發任何事件。事實上,沒有實時事件正在觸發。無法使用Zkemkeeper SDK調用事件

任何幫助將不勝感激以下是我的代碼;

private void button2_Click(object sender, EventArgs e) 
{ 
    string s = ""; 
    int Val = 0; 
    bool bIsConnected = false; 
    try { 
     //zkemkeeper.CZKEMClass axczkem1 = new zkemkeeper.CZKEMClass(); 
     // bIsConnected = axczkem1.Connect_USB(1); 
     bIsConnected = axczkem1.Connect_Com(6,1,115200); 

     if(bIsConnected==true){ 
      Cursor = Cursors.Default; 
      bool asa= axczkem1.EnableDevice(1, true); 
      if (axczkem1.RegEvent(1, 65535)) 
      { 

       axczkem1.OnFinger += new zkemkeeper._IZKEMEvents_OnFingerEventHandler(axczkem1_OnFinger); 
      axczkem1.OnKeyPress += new zkemkeeper._IZKEMEvents_OnKeyPressEventHandler(axczkem1_OnKeyPress); 
      axczkem1.OnConnected += new _IZKEMEvents_OnConnectedEventHandler(axCZKEM1_OnConnected); 
      axczkem1.OnVerify += new zkemkeeper._IZKEMEvents_OnVerifyEventHandler(axCZKEM1_OnVerify); 
      } 
     MessageBox.Show("Connection established!!!"); 
     } 
    } 
    catch(Exception ex) 
    { 
     MessageBox.Show(ex.ToString()); 
    } 
} 

而且下面是事件方法:

private void axCZKEM1_OnVerify(int UserID) 
    { 
     label2.Text = "Verify"; 
    } 

    private void axCZKEM1_OnConnected() 
    { 
     label1.Text = "Connected"; 
    } 

    private void axczkem1_OnKeyPress(int Key) 
    { 
     MessageBox.Show(Key.ToString()); 
    } 

    private void axczkem1_OnFinger() 
    { 
     MessageBox.Show("Connection"); 
    } 

回答

0
  1. 如果這是一個Windows窗體應用程序。如果程序有長時間運行的進程事件不起作用。例如循環(while,for)。還有Thread.sleep()。 如果你想觸發工作,你的程序什麼都不做。
  2. 如果這不是窗體形式,請參閱此鏈接enter link description here