Ejemplo n.º 1
0
 private void btn_TestConnection_Click(object sender, EventArgs e)
 {
     if (axCZKEM1.Connect_Net(txt_IPAddress.Text.Trim(), 4370))
     {
         MessageBox.Show("连接成功");
     }
     else
     {
         MessageBox.Show("连接失败");
     }
 }
Ejemplo n.º 2
0
        /// <summary>
        /// 连接设备(网络)
        /// </summary>
        public bool Connect_Net()
        {
            if (COM_IsConnected == true)
            {
                return(true);
            }
            switch (COM_ConnectType)
            {
            case 1:
                COM_IsConnected = m_CZKEMClass.Connect_Net(COM_IPAddress, COM_TCP_PORT);
                break;

            case 2:
                COM_IsConnected = m_CZKEMClass.Connect_Com(COM_TCP_PORT, COM_MACHINENUMBER, COM_BAUDRATE);
                break;

            case 3:
                COM_IsConnected = m_CZKEMClass.Connect_USB(COM_MACHINENUMBER);
                break;

            default:
                COM_IsConnected = m_CZKEMClass.Connect_Net(COM_IPAddress, COM_TCP_PORT);
                break;
            }

            if (COM_IsConnected == true)
            {
                if (m_CZKEMClass.RegEvent(COM_MACHINENUMBER, 65535))
                {
                    this.m_CZKEMClass.OnFinger           += new zkemkeeper._IZKEMEvents_OnFingerEventHandler(m_CZKEMClass_OnFinger);
                    this.m_CZKEMClass.OnVerify           += new zkemkeeper._IZKEMEvents_OnVerifyEventHandler(m_CZKEMClass_OnVerify);
                    this.m_CZKEMClass.OnAttTransactionEx += new zkemkeeper._IZKEMEvents_OnAttTransactionExEventHandler(m_CZKEMClass_OnAttTransactionEx);
                    this.m_CZKEMClass.OnFingerFeature    += new zkemkeeper._IZKEMEvents_OnFingerFeatureEventHandler(m_CZKEMClass_OnFingerFeature);
                    this.m_CZKEMClass.OnEnrollFingerEx   += new zkemkeeper._IZKEMEvents_OnEnrollFingerExEventHandler(m_CZKEMClass_OnEnrollFingerEx);
                    this.m_CZKEMClass.OnDeleteTemplate   += new zkemkeeper._IZKEMEvents_OnDeleteTemplateEventHandler(m_CZKEMClass_OnDeleteTemplate);
                    this.m_CZKEMClass.OnNewUser          += new zkemkeeper._IZKEMEvents_OnNewUserEventHandler(m_CZKEMClass_OnNewUser);
                    this.m_CZKEMClass.OnHIDNum           += new zkemkeeper._IZKEMEvents_OnHIDNumEventHandler(m_CZKEMClass_OnHIDNum);
                    this.m_CZKEMClass.OnAlarm            += new zkemkeeper._IZKEMEvents_OnAlarmEventHandler(m_CZKEMClass_OnAlarm);
                    this.m_CZKEMClass.OnDoor             += new zkemkeeper._IZKEMEvents_OnDoorEventHandler(m_CZKEMClass_OnDoor);
                    this.m_CZKEMClass.OnWriteCard        += new zkemkeeper._IZKEMEvents_OnWriteCardEventHandler(m_CZKEMClass_OnWriteCard);
                    this.m_CZKEMClass.OnEmptyCard        += new zkemkeeper._IZKEMEvents_OnEmptyCardEventHandler(m_CZKEMClass_OnEmptyCard);
                }
                lbRTShow.Items.Add("设备连接成功,设备码:" + COM_MACHINENUMBER.ToString());
                return(true);
            }
            else
            {
                int idwErrorCode = 0;
                m_CZKEMClass.GetLastError(ref idwErrorCode);
                //MessageUtil.ShowError("不能连上设备,错误代码=" + idwErrorCode.ToString());
                lbRTShow.Items.Add("不能连上设备,错误代码=" + idwErrorCode.ToString());
                return(false);
            }
        }
Ejemplo n.º 3
0
        public int CrearUsuarioBiometrico(String UserID, String Nombre, int Privilegio, ref String vErrorSuccess)
        {
            DataTable vDatos = vConexion.obtenerDataTable("RSP_ObtenerRelojes 2," + vDuo);

            foreach (DataRow item in vDatos.Rows)
            {
                vKeeper.SetCommPassword(Convert.ToInt32(item["compass"].ToString()));
                vConnect = vKeeper.Connect_Net(item["ip"].ToString(), Convert.ToInt32(item["puerto"].ToString()));

                if (GetConnectState() == false)
                {
                    vErrorSuccess = "No estas conectado";
                    return(0);
                }

                int iPrivilege = Privilegio;
                if (UserID.Length > 5)
                {
                    vErrorSuccess = "El codigo de usuario es muy grande";
                    return(0);
                }

                if (UserID.Substring(0, 1) == "0")
                {
                    vErrorSuccess = "El primer numero no puede ser cero";
                    return(0);
                }

                int    idwErrorCode    = 0;
                string sdwEnrollNumber = UserID.Trim();
                string sName           = Nombre.Trim();
                string sCardnumber     = "";
                string sPassword       = "";

                bool bEnabled = true;

                vKeeper.EnableDevice(iMachineNumber, false);
                vKeeper.SetStrCardNumber(sCardnumber);
                if (vKeeper.SSR_SetUserInfo(iMachineNumber, sdwEnrollNumber, sName, sPassword, iPrivilege, bEnabled))
                {
                    vErrorSuccess = "El usuario se ha creado con exito";
                }
                else
                {
                    vKeeper.GetLastError(ref idwErrorCode);
                    vErrorSuccess = ("ErrorCode=" + idwErrorCode.ToString());
                }
                vKeeper.RefreshData(iMachineNumber);
                vKeeper.EnableDevice(iMachineNumber, true);
                vKeeper.Disconnect();
            }
            return(1);
        }
Ejemplo n.º 4
0
        public bool ConnectIP(string ip, int port)
        {
            if (ip.Trim() == "" || port <= 0)
            {
                throw new ArgumentNullException("IP and Port cannot be empty");
                //return false;
            }
            //int idwErrorCode = 0;
            if (bIsDestroying)
            {
                return(false);
            }

            lock (_locker)
            {
                //ilock++; //bIsBusy = true;
                bIsConnected = axCZKEM1.Connect_Net(ip, port);
                if (bIsConnected)
                {
                    iMachineNumber = 1;                           //In fact,when you are using the tcp/ip communication,this parameter will be ignored,that is any integer will all right.Here we use 1.

                    if (axCZKEM1.RegEvent(iMachineNumber, 65535)) //Here you can register the realtime events that you want to be triggered(the parameters 65535 means registering all)
                    {
                        RegisterEvents();
                    }
                }
                else
                {
                    axCZKEM1.GetLastError(ref iLastError);
                    //throw new Exception("Unable to connect the device! ErrorCode=" + idwErrorCode.ToString());
                }
                //ilock--; //bIsBusy = false;
            }
            return(bIsConnected);
        }
Ejemplo n.º 5
0
        //Conexão com o Bio REP
        private void conectarTcp()
        {
            Cursor = Cursors.WaitCursor;
            if (btnConnect.Text == "Desconectar")
            {
                //Desconecta o Bio REP 100
                bioRep.Disconnect();
                atualizaResposta("Disconnect()", "Desconecta o Bio REP 100", "Não possui retorno");
                bIsConnected       = false;
                btnConnect.Text    = "Conectar";
                lblState.Text      = "Status: Desconectado";
                lblState.ForeColor = Color.Red;
                Cursor             = Cursors.Default;
                return;
            }
            //Efetua conexão com o Bio REP 100
            bIsConnected = bioRep.Connect_Net(txtIP.Text, Convert.ToInt32(txtPort.Text));

            if (bIsConnected == true)
            {
                atualizaResposta("Connect_Net(endIp, porta)", "Efetua conexão com o Bio REP 100", "True");
                btnConnect.Text = "Desconectar";
                btnConnect.Refresh();
                lblState.Text      = "Status: Conectado";
                lblState.ForeColor = Color.Green;
                numeroRep          = 1;//Não utilizado para TCP/IP.
            }
            else
            {
                bioRep.GetLastError(ref erroCod);
                MessageBox.Show("Não foi possível conectar ao BIO REP 100 \n Erro número = " + erroCod.ToString(), "Error");
            }
            Cursor = Cursors.Default;
        }
Ejemplo n.º 6
0
        public void startService()
        {
            axCZKEM1 = new zkemkeeper.CZKEMClass();
            eventLog1.WriteEntry("Connecting to Device (" + ip + ":" + port + ")");
            bIsConnected = axCZKEM1.Connect_Net(ip, Convert.ToInt32(port));
            if (bIsConnected == true)
            {
                eventLog1.WriteEntry("Connected to the Device !!");
                iMachineNumber = 1;
                if (axCZKEM1.RegEvent(iMachineNumber, 65535))
                {
                    this.axCZKEM1.OnFinger           += new zkemkeeper._IZKEMEvents_OnFingerEventHandler(axCZKEM1_OnFinger);
                    this.axCZKEM1.OnVerify           += new zkemkeeper._IZKEMEvents_OnVerifyEventHandler(axCZKEM1_OnVerify);
                    this.axCZKEM1.OnAttTransactionEx += new zkemkeeper._IZKEMEvents_OnAttTransactionExEventHandler(axCZKEM1_OnAttTransactionEx);

                    //This Log Appears in Event Viewer
                    eventLog1.WriteEntry("Define events (OnFingers and OnVerify) !");
                    //This Line Fires Event in Service1.cs for testing event handler
                    //Finger(EventArgs.Empty);
                }
            }
            else
            {
                eventLog1.WriteEntry("Unable to Connect the Device");
            }
        }
Ejemplo n.º 7
0
        private void Button_Click(object sender, RoutedEventArgs e)
        {
            CZKEMClass axCZKEM1 = new zkemkeeper.CZKEMClass();

            var IsConnected = axCZKEM1.Connect_Net("192.168.0.45", 443);

            if (IsConnected)
            {
            }
        }
Ejemplo n.º 8
0
        //call back function of threadpool
        public void Start(Object oThreadContext)
        {
            axCZKEM1.SetCommPassword(connectInfo.PassWord);
            int retryCount = 0;

            while (retryCount < 2 && bIsConnected == false)
            {
                retryCount++;
                ConsoleWriteLine("Start connect...");


                bIsConnected = axCZKEM1.Connect_Net(connectInfo.Ip, connectInfo.Port);
                if (bIsConnected)
                {
                    ConsoleWriteLine("Connect success!");
                    if (axCZKEM1.RegEvent(iMachineNumber, 65535)) //Here you can register the realtime events that you want to be triggered(the parameters 65535 means registering all)
                    {
                        this.axCZKEM1.OnFinger           += new zkemkeeper._IZKEMEvents_OnFingerEventHandler(axCZKEM1_OnFinger);
                        this.axCZKEM1.OnVerify           += new zkemkeeper._IZKEMEvents_OnVerifyEventHandler(axCZKEM1_OnVerify);
                        this.axCZKEM1.OnAttTransactionEx +=
                            new zkemkeeper._IZKEMEvents_OnAttTransactionExEventHandler(axCZKEM1_OnAttTransactionEx);
                        this.axCZKEM1.OnFingerFeature +=
                            new zkemkeeper._IZKEMEvents_OnFingerFeatureEventHandler(axCZKEM1_OnFingerFeature);
                        this.axCZKEM1.OnEnrollFingerEx +=
                            new zkemkeeper._IZKEMEvents_OnEnrollFingerExEventHandler(axCZKEM1_OnEnrollFingerEx);
                        this.axCZKEM1.OnDeleteTemplate +=
                            new zkemkeeper._IZKEMEvents_OnDeleteTemplateEventHandler(axCZKEM1_OnDeleteTemplate);
                        this.axCZKEM1.OnNewUser   += new zkemkeeper._IZKEMEvents_OnNewUserEventHandler(axCZKEM1_OnNewUser);
                        this.axCZKEM1.OnHIDNum    += new zkemkeeper._IZKEMEvents_OnHIDNumEventHandler(axCZKEM1_OnHIDNum);
                        this.axCZKEM1.OnAlarm     += new zkemkeeper._IZKEMEvents_OnAlarmEventHandler(axCZKEM1_OnAlarm);
                        this.axCZKEM1.OnDoor      += new zkemkeeper._IZKEMEvents_OnDoorEventHandler(axCZKEM1_OnDoor);
                        this.axCZKEM1.OnWriteCard +=
                            new zkemkeeper._IZKEMEvents_OnWriteCardEventHandler(axCZKEM1_OnWriteCard);
                        this.axCZKEM1.OnEmptyCard +=
                            new zkemkeeper._IZKEMEvents_OnEmptyCardEventHandler(axCZKEM1_OnEmptyCard);
                        ConsoleWriteLine("Register success!");
                    }
                    else
                    {
                        ConsoleError();
                    }
                }
                else

                {
                    ConsoleError();
                }
            }
        }
Ejemplo n.º 9
0
        static void Main(string[] args)
        {
            DataTable vDatos = vConexion.obtenerDataTable("RSP_ObtenerRelojes 1");

            foreach (DataRow item in vDatos.Rows)
            {
                vKeeper.SetCommPassword(1983);                          //Convert.ToInt32(item["compass"].ToString()));
                vConnect = vKeeper.Connect_Net("150.150.10.211", 4370); //item["ip"].ToString(), Convert.ToInt32(item["puerto"].ToString()));
                ObtenerData(item["ciudad"].ToString());
                vKeeper.Disconnect();
            }

            while (true)
            {
            }
            ;
        }
Ejemplo n.º 10
0
        public void WakeUp()
        {
            bool bResult = sdk.Connect_Net(sIP, iPort);

            if (!bResult)//Connecting device failed.
            {
                Console.WriteLine("*********Connecting " + sIP + " Failed......Current Time:" + DateTime.Now.ToLongTimeString());
                return;
            }
            iConnectedCount++;//count of connected devices

            System.Console.WriteLine("*********IP:" + sIP + " " + "ThreadID:" + iThreadID.ToString() + " ConnectedCount:" + iConnectedCount.ToString() + " ConnectedTime:" + DateTime.Now.ToLongTimeString());
            System.Console.WriteLine("*********Successfully Connect " + sIP);
            int iLogCount    = 0;
            int idwErrorCode = 0;

            sdk.EnableDevice(iMachineNumber, false);//disable the device
            if (sdk.ReadAllGLogData(iMachineNumber))
            {
                int idwTMachineNumber = 0;
                int idwEnrollNumber   = 0;
                int idwEMachineNumber = 0;
                int idwVerifyMode     = 0;
                int idwInOutMode      = 0;
                int idwYear           = 0;
                int idwMonth          = 0;
                int idwDay            = 0;
                int idwHour           = 0;
                int idwMinute         = 0;

                String connString = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=..\..\data\AttLogs.mdb";

                while (sdk.GetGeneralLogData(iMachineNumber, ref idwTMachineNumber, ref idwEnrollNumber, ref idwEMachineNumber,
                                             ref idwVerifyMode, ref idwInOutMode, ref idwYear, ref idwMonth, ref idwDay, ref idwHour, ref idwMinute))
                {
                    iLogCount++;    //increase the number of attendance records

                    lock (myObject) //make the object exclusive
                    {
                        OleDbConnection conn  = new OleDbConnection(connString);
                        string          sTime = idwYear.ToString() + "-" + idwMonth.ToString() + "-" + idwDay.ToString() + " " + idwHour.ToString() + ":" + idwMinute.ToString();
                        string          sql   = "insert into BWAttLogs([IP],[EnrollNumber],[VerifyMode],[InOutMode],[Time]) values('" + sIP + "','" + idwEnrollNumber + "','" + idwVerifyMode + "','" + idwInOutMode + "','" + sTime + "')";//
                        OleDbCommand    cmd   = new OleDbCommand(sql, conn);
                        conn.Open();
                        try
                        {
                            cmd.ExecuteNonQuery();
                        }
                        catch (Exception e)
                        {
                            System.Console.WriteLine("Error:" + e.Message);
                            break;
                        }
                        System.Console.WriteLine("ThreadID:" + iThreadID.ToString() + " IP:" + sIP + "," + iLogCount.ToString() + " Log(s) has(have) been inserted into database.");
                    }
                }
            }
            else
            {
                sdk.GetLastError(ref idwErrorCode);
                System.Console.WriteLine("ThreadID:" + iThreadID.ToString() + " General Log Data Count:0 ErrorCode=" + idwErrorCode.ToString());
            }
            sdk.EnableDevice(iMachineNumber, true);//enable the device
            sdk.Disconnect();
            System.Console.WriteLine("*********Successfully DisConnect " + sIP);
        }
Ejemplo n.º 11
0
        private void connect(int i, zkemkeeper.CZKEMClass axCZKEM1)
        {
            LogManager.LogDebug("wether into the function");
            Thread.Sleep(0);
            string ip = null;

            ip = ipfix + i;
            bool bIsConnected = axCZKEM1.Connect_Net(ip, 4370);

            if (bIsConnected == true)
            {
                int idwErrorCode = 0;

                int idwEnrollNumber = 0;
                int idwVerifyMode   = 0;
                int idwInOutMode    = 0;

                int idwYear     = 0;
                int idwMonth    = 0;
                int idwDay      = 0;
                int idwHour     = 0;
                int idwMinute   = 0;
                int idwSecond   = 0;
                int idwWorkCode = 0;
                int idwReserved = 0;

                int iGLCount = 0;
                int iIndex   = 0;
                LogManager.LogDebug("The device is connected");
                iMachineNumber = 1;
                axCZKEM1.RegEvent(iMachineNumber, 65535);        //Here you can register the realtime events that you want to be triggered(the parameters 65535 means registering all)
                axCZKEM1.EnableDevice(iMachineNumber, false);    //disable the device
                if (axCZKEM1.ReadGeneralLogData(iMachineNumber)) //read all the attendance records to the memory
                {
                    while (axCZKEM1.GetGeneralExtLogData(iMachineNumber, ref idwEnrollNumber, ref idwVerifyMode, ref idwInOutMode,
                                                         ref idwYear, ref idwMonth, ref idwDay, ref idwHour, ref idwMinute, ref idwSecond, ref idwWorkCode, ref idwReserved))//get records from the memory
                    {
                        AttLogsEntity.Add(new AttLogsEntity
                        {
                            UserId      = idwEnrollNumber,
                            CheckTime   = Convert.ToDateTime(idwYear.ToString() + "-" + idwMonth.ToString() + "-" + idwDay.ToString() + " " + idwHour.ToString() + ":" + idwMinute.ToString()),
                            CheckType   = idwInOutMode,
                            VerifyCode  = idwVerifyMode,
                            SensoRid    = idwTMachineNumber,
                            Memoinfo    = "null",          //test
                            intWorkCode = idwWorkCode,
                            sn          = "5831492010096", //test
                            UserExtFmt  = idwReserved
                        });
                    }
                }
                else
                {
                    axCZKEM1.GetLastError(ref idwErrorCode);
                    if (idwErrorCode != 0)
                    {
                        LogManager.LogDebug("Reading data from terminal failed,ErrorCode: " + idwErrorCode.ToString());
                    }
                    else
                    {
                        LogManager.LogDebug("No data from terminal returns!");
                    }
                }
                axCZKEM1.EnableDevice(iMachineNumber, true);        //enable the device
            }
            else
            {
                axCZKEM1.GetLastError(ref idwErrorCode);
                LogManager.LogDebug("The device is disconnected");
            }
        }
Ejemplo n.º 12
0
        public void WakeUp(Object obj)
        {
            lock (sdk)
            {
                sdk.SetCommPassword(iPass);
                Log.i("*********Wake up and Start Connecting " + sIP);

                bool bResult = sdk.Connect_Net(sIP, iPort);

                if (!bResult)//Connecting device failed.
                {
                    Log.e("*********Connecting " + sIP + " Failed......Current Time:" + DateTime.Now.ToLongTimeString());
                    return;
                }
                iConnectedCount++;//count of connected devices

                Log.i("*********Successfully Connect IP:" + sIP + " " + "ThreadID:" + iThreadID.ToString() + " ConnectedCount:" + iConnectedCount.ToString() + " ConnectedTime:" + DateTime.Now.ToLongTimeString());

                int iLogCount    = 0;
                int idwErrorCode = 0;

                sdk.EnableDevice(iMachineNumber, false);//disable the device
                if (sdk.ReadAllGLogData(iMachineNumber))
                {
                    string sdwEnrollNumber = "";
                    int    idwVerifyMode   = 0;
                    int    idwInOutMode    = 0;
                    int    idwYear         = 0;
                    int    idwMonth        = 0;
                    int    idwDay          = 0;
                    int    idwHour         = 0;
                    int    idwMinute       = 0;
                    int    idwSecond       = 0;
                    int    idwWorkCode     = 0;

                    //String connString = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=..\..\..\att.mdf";



                    AttDataClassesDataContext context = new AttDataClassesDataContext();


                    var table = context.GetTable <TFTAttLog>();
                    var a     = (from TFTAttLog in table
                                 select TFTAttLog).ToList();



                    //String connStringSql = @"Data Source = (LocalDB)\MSSQLLocalDB; AttachDbFilename = E:\zkemsdk\zkemSource\脱机通讯开发包(64bit Ver6.2.4.11)\Demo\C#\IFace_x64\ConsoleMThreads\att.mdf; Integrated Security = True; Connect Timeout = 30";
                    //SqlConnection connSql = new SqlConnection(connStringSql);
                    //connSql.Open();


                    var newLogs = new LinkedList <TFTAttLog>();
                    while (sdk.SSR_GetGeneralLogData(iMachineNumber, out sdwEnrollNumber, out idwVerifyMode, out idwInOutMode, out idwYear, out idwMonth, out idwDay, out idwHour, out idwMinute, out idwSecond, ref idwWorkCode))
                    {
                        iLogCount++;    //increase the number of attendance records

                        lock (myObject) //make the object exclusive
                        {
                            string sTime = idwYear.ToString() + "-" + idwMonth.ToString() + "-" + idwDay.ToString() + " " + idwHour.ToString() + ":" + idwMinute.ToString() + ":" + idwSecond.ToString();
                            //OleDbConnection conn = new OleDbConnection(connString);
                            var log = new TFTAttLog();
                            log.Ip           = sIP.ToString();
                            log.EnrollNumber = sdwEnrollNumber.ToString();
                            log.VerifyMode   = idwVerifyMode.ToString();
                            log.InOutMode    = idwInOutMode.ToString();
                            log.Time         = sTime;
                            log.WorkCode     = idwWorkCode.ToString();
                            try
                            {
                                if (!table.Contains(log))
                                {
                                    Log.d("READLOG:" + log);
                                    newLogs.AddLast(log);
                                    SendToZHIREN_SaveInLOCAL(table, null, log);
                                }
                            }
                            catch (Exception e)
                            {
                                Log.e(e.Message);
                                if (Log.isDebugging())
                                {
                                    throw new Exception("ERROR");
                                }
                            }
                        }
                    }

                    //SendToZHIREN_SaveLOCAL(table, newLogs, null);
                }
                else
                {
                    sdk.GetLastError(ref idwErrorCode);
                    Log.e("ThreadID:" + iThreadID.ToString() + " General Log Data Count:0 ErrorCode=" + idwErrorCode.ToString());
                }

                sdk.EnableDevice(iMachineNumber, true);//enable the device
                sdk.Disconnect();
                iConnectedCount--;
                Log.i("*********Successfully DisConnect " + sIP);
            }
        }