Ejemplo n.º 1
0
        public static StartUpConfig CreateConfig( string defaultFile)
        {
            StartUpConfig config = new StartUpConfig() { File = defaultFile };

            ////foreach (var arg in args)
            ////{
            ////    if (string.IsNullOrWhiteSpace(arg))
            ////    {
            ////        continue;
            ////    }

            ////    var splitArgs = arg.Trim().Split(':');
            ////    if (splitArgs.Length >= 2)
            ////    {
            ////        if (splitArgs[0] == FileProperty)
            ////        {
            ////            if (splitArgs.Length == 3)
            ////            {
            ////                config.File = $"{splitArgs[1]}:{splitArgs[2]}";
            ////            }
            ////            else
            ////            {
            ////                config.File = $"{splitArgs[1]}";
            ////            }

                       
            ////        }
            ////    }
            ////    if (arg == OnlyDoneKey)
            ////    {
            ////        config.OnlyDone = true;
            ////    }
            ////}
            return config;
        }
Ejemplo n.º 2
0
        public static StartUpConfig CreateConfig(string defaultFile)
        {
            try
            {
                StartUpConfig config = new StartUpConfig()
                {
                    File = defaultFile
                };

                ////foreach (var arg in args)
                ////{
                ////    if (string.IsNullOrWhiteSpace(arg))
                ////    {
                ////        continue;
                ////    }

                ////    var splitArgs = arg.Trim().Split(':');
                ////    if (splitArgs.Length >= 2)
                ////    {
                ////        if (splitArgs[0] == FileProperty)
                ////        {
                ////            if (splitArgs.Length == 3)
                ////            {
                ////                config.File = $"{splitArgs[1]}:{splitArgs[2]}";
                ////            }
                ////            else
                ////            {
                ////                config.File = $"{splitArgs[1]}";
                ////            }


                ////        }
                ////    }
                ////    if (arg == OnlyDoneKey)
                ////    {
                ////        config.OnlyDone = true;
                ////    }
                ////}
                return(config);
            }
            catch (Exception ex)
            {
                CallBacker.CallBackException?.Invoke(ex);
                return(null);
            }
        }
Ejemplo n.º 3
0
        public static void Send(string pathToMotionFile, TextBox textBox_Terminal, Application app)
        {
            App = app;
            try
            {
                XmlConfigurator.Configure();

                _startUpConfig = StartUpConfig.CreateConfig(pathToMotionFile);
                var    baudRate = ConstantRepositoriy.BAUNT_RATE;
                string comPort  = ConstantRepositoriy.COM_PORT;

                Package package;
                ComPortPackagesService comPortPackagesService;

                //if (_startUpConfig.OnlyDone == false)
                //{
                using (FileStream stream = new FileStream(_startUpConfig.File, FileMode.Open, FileAccess.Read))
                {
                    stream.Position = 0;
                    package         = _serializationService.Deserialize <Package>(stream, SerializationType.Binary);
                }
                comPortPackagesService = new ComPortPackagesService(
                    new Rs232Impl(package.ComPort, (BaudRates)baudRate, Parity.None, 8, StopBits.One)
                    , package);


                comPortPackagesService.Completed += (s, e) =>
                {
                    comPortPackagesService.StopSender();
                    comPortPackagesService.Close();
                    _log.Info("Отправка данных закончена");

                    if (string.IsNullOrWhiteSpace(package.ProccessName) == false)
                    {
                        _log.Info($"Остановка процесса {package.ProccessName} ...");
                        var process = Process.GetProcessesByName(package.ProccessName).FirstOrDefault();
                        if (process == null)
                        {
                            _log.Info($"Процесс {package.ProccessName} не найден в системе");
                        }
                        else
                        {
                            process.Kill();
                            _log.Info($"Процесс {package.ProccessName} успешно остановлен");
                        }
                    }

                    //System.Console.WriteLine("Нажмите ENTER для выхода");
                    //System.Console.ReadLine();
                };
                comPortPackagesService.Init(textBox_Terminal);
                comPortPackagesService.StartSender();
                //}
                //else
                //{
                //     package = new Package();
                //    package.ComPort = comPort;
                //    comPortPackagesService = new ComPortPackagesService(new Rs232Impl(package.ComPort, (BaudRates)baudRate, Parity.None, 8, StopBits.One)
                //  , package);

                //    comPortPackagesService.SimpleSend(Consts.DoneBuffer);
                //    comPortPackagesService.Close();


                //}
            }
            //catch (VrLicenseException l1)
            //{
            //    _log.Error(l1);
            //}
            catch (FileNotFoundException e0)
            {
                _log.Error(e0);
                //MessageBox.Show(e0.Message);
            }
            catch (Exception e)
            {
                _log.Error(e);
                //MessageBox.Show(e.Message);
            }
        }