public void Connect()
            {
                try
                {
                    //EthSystemDiscoverer.SystemInfo eth_system_info = MasterCamera as EthSystemDiscoverer.SystemInfo;
                    //EthSystemConnector conn = new EthSystemConnector(eth_system_info.IPAddress, eth_system_info.Port);
                    EthSystemConnector conn = new EthSystemConnector(IPAddress);
                    conn.UserName = User;
                    conn.Password = Password;

                    _connector = conn;

                    _system = new DataManSystem(_connector);
                    _system.DefaultTimeout = 5000;


                    #region  Subscribe to events that are signalled when the system is connected / disconnected.
                    _system.SystemConnected    += new SystemConnectedHandler(OnSystemConnected);
                    _system.SystemDisconnected += new SystemDisconnectedHandler(OnSystemDisconnected);
                    //_system.SystemWentOnline += new SystemWentOnlineHandler(OnSystemWentOnline);
                    //_system.SystemWentOffline += new SystemWentOfflineHandler(OnSystemWentOffline);
                    //_system.KeepAliveResponseMissed += new KeepAliveResponseMissedHandler(OnKeepAliveResponseMissed);
                    //_system.BinaryDataTransferProgress += new BinaryDataTransferProgressHandler(OnBinaryDataTransferProgress);
                    //_system.OffProtocolByteReceived += new OffProtocolByteReceivedHandler(OffProtocolByteReceived);
                    //_system.AutomaticResponseArrived += new AutomaticResponseArrivedHandler(AutomaticResponseArrived);
                    #endregion

                    #region Subscribe to events that are signalled when the device sends auto-responses.
                    ResultTypes requested_result_types = ResultTypes.ReadXml | ResultTypes.Image | ResultTypes.ImageGraphics;
                    //ResultTypes requested_result_types = ResultTypes.ReadXml;
                    _results = new ResultCollector(_system, requested_result_types);
                    _results.ComplexResultCompleted += Results_ComplexResultCompleted;
                    //_results.SimpleResultDropped += Results_SimpleResultDropped;
                    #endregion

                    //_system.SetKeepAliveOptions(cbEnableKeepAlive.Checked, 3000, 1000);

                    _system.Connect();

                    try
                    {
                        _system.SetResultTypes(requested_result_types);
                    }
                    catch
                    { }
                }
                catch
                {
                    CleanupConnection();
                }
            }
Exemple #2
0
        private void CleanupConnection()
        {
            if (null != _system)
            {
                _system.SystemConnected      -= OnSystemConnected;
                _system.SystemDisconnected   -= OnSystemDisconnected;
                _system.ReadStringArrived    -= OnReadStringArrived;
                _system.ImageArrived         -= OnImageArrived;
                _system.ImageGraphicsArrived -= OnImageGraphicsArrived;
            }

            _connector = null;
            _system    = null;
        }
Exemple #3
0
        private void CleanupConnection()
        {
            if (null != _system)
            {
                _system.SystemConnected            -= OnSystemConnected;
                _system.SystemDisconnected         -= OnSystemDisconnected;
                _system.SystemWentOnline           -= OnSystemWentOnline;
                _system.SystemWentOffline          -= OnSystemWentOffline;
                _system.KeepAliveResponseMissed    -= OnKeepAliveResponseMissed;
                _system.BinaryDataTransferProgress -= OnBinaryDataTransferProgress;
                _system.OffProtocolByteReceived    -= OffProtocolByteReceived;
                _system.AutomaticResponseArrived   -= AutomaticResponseArrived;
            }

            _connector = null;
            _system    = null;
        }
Exemple #4
0
        private void btnConnect_Click(object sender, EventArgs e)
        {
            if (listBoxDetectedSystems.SelectedIndex == -1 || listBoxDetectedSystems.SelectedIndex >= listBoxDetectedSystems.Items.Count)
            {
                return;
            }

            btnConnect.Enabled = false;
            _autoconnect       = false;

            try
            {
                var system_info = listBoxDetectedSystems.Items[listBoxDetectedSystems.SelectedIndex];

                if (system_info is EthSystemDiscoverer.SystemInfo)
                {
                    EthSystemDiscoverer.SystemInfo eth_system_info = system_info as EthSystemDiscoverer.SystemInfo;
                    EthSystemConnector             conn            = new EthSystemConnector(eth_system_info.IPAddress, eth_system_info.Port)
                    {
                        UserName = "******",
                        Password = txtPassword.Text
                    };

                    _connector = conn;
                }
                else if (system_info is SerSystemDiscoverer.SystemInfo)
                {
                    SerSystemDiscoverer.SystemInfo ser_system_info = system_info as SerSystemDiscoverer.SystemInfo;
                    SerSystemConnector             conn            = new SerSystemConnector(ser_system_info.PortName, ser_system_info.Baudrate);

                    _connector = conn;
                }

                _logger.Enabled   = cbLoggingEnabled.Checked;
                _connector.Logger = _logger;

                _system = new DataManSystem(_connector)
                {
                    DefaultTimeout = 5000
                };

                // Subscribe to events that are signalled when the system is connected / disconnected.
                _system.SystemConnected            += new SystemConnectedHandler(OnSystemConnected);
                _system.SystemDisconnected         += new SystemDisconnectedHandler(OnSystemDisconnected);
                _system.SystemWentOnline           += new SystemWentOnlineHandler(OnSystemWentOnline);
                _system.SystemWentOffline          += new SystemWentOfflineHandler(OnSystemWentOffline);
                _system.KeepAliveResponseMissed    += new KeepAliveResponseMissedHandler(OnKeepAliveResponseMissed);
                _system.BinaryDataTransferProgress += new BinaryDataTransferProgressHandler(OnBinaryDataTransferProgress);
                _system.OffProtocolByteReceived    += new OffProtocolByteReceivedHandler(OffProtocolByteReceived);
                _system.AutomaticResponseArrived   += new AutomaticResponseArrivedHandler(AutomaticResponseArrived);

                // Subscribe to events that are signalled when the device sends auto-responses.
                ResultTypes requested_result_types = ResultTypes.ReadXml | ResultTypes.Image | ResultTypes.ImageGraphics;
                _results = new ResultCollector(_system, requested_result_types);
                _results.ComplexResultCompleted += Results_ComplexResultCompleted;
                _results.SimpleResultDropped    += Results_SimpleResultDropped;

                _system.SetKeepAliveOptions(cbEnableKeepAlive.Checked, 3000, 1000);

                _system.Connect(1000);

                try
                {
                    _system.SetResultTypes(requested_result_types);
                }
                catch
                { }
            }
            catch (Exception ex)
            {
                CleanupConnection();

                AddListItem("Failed to connect: " + ex.ToString());
            }

            _autoconnect = true;
            RefreshGui();
        }
Exemple #5
0
        private void btnConnect_Click(object sender, EventArgs e)
        {
            btnConnect.Enabled = false;

            try
            {
                if (listBoxDetectedSystems.SelectedIndex != -1 && listBoxDetectedSystems.Items.Count > listBoxDetectedSystems.SelectedIndex)
                {
                    var system_info = listBoxDetectedSystems.Items[listBoxDetectedSystems.SelectedIndex];

                    if (system_info is EthSystemDiscoverer.SystemInfo)
                    {
                        EthSystemDiscoverer.SystemInfo eth_system_info = system_info as EthSystemDiscoverer.SystemInfo;
                        EthSystemConnector             conn            = new EthSystemConnector(eth_system_info.IPAddress);

                        conn.UserName = "******";
                        conn.Password = txtPassword.Text;

                        _connector = conn;
                    }
                    else if (system_info is SerSystemDiscoverer.SystemInfo)
                    {
                        SerSystemDiscoverer.SystemInfo ser_system_info = system_info as SerSystemDiscoverer.SystemInfo;
                        SerSystemConnector             conn            = new SerSystemConnector(ser_system_info.PortName, ser_system_info.Baudrate);

                        _connector = conn;
                    }
                }

                _connector.Logger = new GuiLogger(tbLog, cbLoggingEnabled.Checked, ref _closing);

                _system = new DataManSystem(_connector);
                _system.DefaultTimeout = 5000;

                // Subscribe to events that are signalled when the system is connected / disconnected.
                _system.SystemConnected    += new SystemConnectedHandler(OnSystemConnected);
                _system.SystemDisconnected += new SystemDisconnectedHandler(OnSystemDisconnected);

                _system.SystemWentOnline  += new SystemWentOnlineHandler(OnSystemWentOnline);
                _system.SystemWentOffline += new SystemWentOfflineHandler(OnSystemWentOffline);

                // Subscribe to events that are signalled when the deveice sends auto-responses.
                _system.ReadStringArrived          += new ReadStringArrivedHandler(OnReadStringArrived);
                _system.XmlResultArrived           += new XmlResultArrivedHandler(OnXmlResultArrived);
                _system.ImageArrived               += new ImageArrivedHandler(OnImageArrived);
                _system.ImageGraphicsArrived       += new ImageGraphicsArrivedHandler(OnImageGraphicsArrived);
                _system.BinaryDataTransferProgress += new BinaryDataTransferProgressHandler(OnBinaryDataTransferProgress);

                _system.SetKeepAliveOptions(cbEnableKeepAlive.Checked, 3000, 1000);

                _system.Connect();
            }
            catch (Exception ex)
            {
                CleanupConnection();

                AddListItem("Failed to connect: " + ex.ToString());
                btnConnect.Enabled = true;
            }

            _autoconnect = true;
        }