예제 #1
0
        public List <Controller_Properties> Scann_For_Controllers()
        {
            scanner.Scan();
            ControllerInfoCollection controllers = scanner.Controllers;

            List <Controller_Properties> _ControllersInfoList = new List <Controller_Properties>();

            foreach (ControllerInfo controllerInfo in controllers)
            {
                Controller_Properties _ControllerInfo = new Controller_Properties();

                //Get all the data neccesary from the controllerinfo object
                _ControllerInfo.Id             = controllerInfo.Id;
                _ControllerInfo.Availability   = controllerInfo.Availability.ToString();
                _ControllerInfo.IsVirtual      = controllerInfo.IsVirtual.ToString();
                _ControllerInfo.SystemName     = controllerInfo.SystemName;
                _ControllerInfo.Version        = controllerInfo.Version.ToString();
                _ControllerInfo.ControllerName = controllerInfo.ControllerName;
                _ControllerInfo.IPAddress      = controllerInfo.IPAddress.ToString();
                _ControllerInfo.ControllerInfo = controllerInfo;

                //add it to the list
                _ControllersInfoList.Add(_ControllerInfo);
            }
            return(_ControllersInfoList);
        }
예제 #2
0
        //Creates an instance of the selected controller
        private void Controllers_In_Network_List_MouseDoubleClick(object sender, MouseButtonEventArgs e)
        {
            Controller_Properties _SelectedController = null;
            string           Output;
            string           Alive_Test;
            MessageBoxResult result;

            if (Controllers_In_Network_List.SelectedItems.Count == 1)
            {
                bool bAlive          = false;
                bool bAlive_previous = false;

                _SelectedController = (Controller_Properties)Controllers_In_Network_List.SelectedItems[0];
                Output = _Scanner.Network_Connect_To_Cotroller(_SelectedController.ControllerInfo);
                Conn_Text_Status.Content = "Connectivity status: " + Output;

                if (Output == "Selected controller not available / ready")
                {
                    Conn_Status.Fill = Brushes.Red;
                }
                else
                {
                    Conn_Status.Fill = Brushes.Green;
                }

                bAlive_previous = _Scanner.Read_Bool("bAlive");
                bAlive          = !bAlive_previous;
                _Scanner.Set_Reset_Bool("bAlive", bAlive);
                bAlive = _Scanner.Read_Bool("bAlive");

                if (bAlive != bAlive_previous)
                {
                    Alive_Test = "TEST R/W OK!";
                }
                else
                {
                    Alive_Test = "TEST R/W NOK!";
                }

                result = MessageBox.Show(Alive_Test);
            }
        }