Exemple #1
0
        static void Main(string[] args)
        {
            PrinterManager pm = new PrinterManager();

            // Заранее созданные объекты, которые раньше инициализировались
            // с собственными типами Canon и Epson
            Printer canon = new Printer("Canon", "X321");
            Printer epson = new Printer("Epson", "ZOOM");

            pm.Add(canon); pm.Add(epson);
            MenuHandler.mapPrinters = new Dictionary <int, Printer> {
                { 0, canon }, { 1, epson }
            };

            ConsoleKeyInfo key = default(ConsoleKeyInfo);

            while (key.Key != ConsoleKey.Backspace)
            {
                MenuHandler.GenerateMap(pm);
                MenuHandler.PrintMenu(pm);

                key = System.Console.ReadKey();
                if (key.Key == ConsoleKey.D1)
                {
                    System.Console.WriteLine();
                    MenuHandler.CreateNewPrinter(pm);
                }
                else
                {
                    pm.Print(MenuHandler.mapPrinters[
                                 key.KeyChar - MenuHandler.ASCI_CODE_0_DIGIT - MenuHandler.MENU_ITEMS_SHIFT
                             ]);
                }
            }
        }
Exemple #2
0
        private void GenerateCalibrationPrintJobAsync_Completed(object sender, EventArgs e)
        {
            try
            {
                if (InvokeRequired)
                {
                    Invoke((MethodInvoker) delegate { GenerateCalibrationPrintJobAsync_Completed(sender, e); });
                    return;
                }

                PrinterManager.SelectedPrinters.Remove(this._selectedPrinter);
                PrinterManager.AvailablePrinters.Remove(this._selectedPrinter);
                //SavePrinter.Selected = true;
                this._selectedPrinter.Selected = true;
                PrinterManager.SetDefaultPrinter(this._selectedPrinter);
                this.Enabled = true;
                this.Focus();
            }
            catch (Exception exc)
            {
                MessageBox.Show(exc.Message);
            }

            //ProcessActionEnd();
        }
        static void Main(string[] args)
        {
            PrinterManager printerManager = new PrinterManager();

            string fileName = "123.txt";

            while (true)
            {
                System.Console.WriteLine("\nSelect your choice:");
                System.Console.WriteLine("1:Add new printer");
                System.Console.WriteLine("2:Print on Canon");
                System.Console.WriteLine("3:Print on Epson");

                var key = System.Console.ReadKey();

                if (key.Key == ConsoleKey.D1)
                {
                    System.Console.WriteLine("\nEnter Name: ");
                    string name = System.Console.ReadLine();
                    System.Console.WriteLine("Enter Model: ");
                    string model = System.Console.ReadLine();
                    printerManager.CreatePrinter(name, model);
                }

                if (key.Key == ConsoleKey.D2)
                {
                    printerManager.Print("Canon", fileName);
                }

                if (key.Key == ConsoleKey.D3)
                {
                    printerManager.Print("Epson", fileName);
                }
            }
        }
Exemple #4
0
        public GraphicConversionDemo(PrinterManager printerManager)
        {
            InitializeComponent();

            viewModel           = DataContext as GraphicConversionDemoViewModel;
            this.printerManager = printerManager;
        }
Exemple #5
0
 internal static void GenerateMap(PrinterManager printerManager)
 {
     for (int i = mapPrinters.Count; i < printerManager.Printers.Count; i++)
     {
         mapPrinters.Add(i, printerManager.Printers[i]);
     }
 }
Exemple #6
0
        public PrintDemo(PrinterManager printerManager)
        {
            InitializeComponent();

            this.printerManager = printerManager;
            viewModel           = DataContext as PrintDemoViewModel;
        }
Exemple #7
0
        public DashBoardView(Users users, String currentUser, PrinterManager printerManager)
        {
            InitializeComponent();

            CurrentUser = currentUser;
            Users       = users;

            dataAccess = new DataAccess();

            Models = dataAccess.GetModels();


            extendConstructor();

            PrinterManager = printerManager;

            switch (currentUser)
            {
            case "Supervisor":
                Password.Visibility = System.Windows.Visibility.Hidden;
                //ByPass.Visibility = System.Windows.Visibility.Visible;
                ModelsButton.Visibility            = System.Windows.Visibility.Visible;
                Reprint.Visibility                 = System.Windows.Visibility.Visible;
                SetPlan.Visibility                 = System.Windows.Visibility.Visible;
                Reports.Visibility                 = System.Windows.Visibility.Visible;
                ManualIntegrationButton.Visibility = System.Windows.Visibility.Visible;
                break;

            case "Operator":

                Password.Visibility = System.Windows.Visibility.Hidden;
                //ByPass.Visibility = System.Windows.Visibility.Hidden;
                ModelsButton.Visibility = System.Windows.Visibility.Hidden;
                Reprint.Visibility      = System.Windows.Visibility.Visible;
                Reports.Visibility      = System.Windows.Visibility.Hidden;

                break;


            case "Quality":

                Password.Visibility = System.Windows.Visibility.Hidden;
                //ByPass.Visibility = System.Windows.Visibility.Hidden;
                ModelsButton.Visibility = System.Windows.Visibility.Hidden;
                Reprint.Visibility      = System.Windows.Visibility.Hidden;
                SetPlan.Visibility      = System.Windows.Visibility.Hidden;
                Reports.Visibility      = System.Windows.Visibility.Visible;

                break;

            default:
                Password.Visibility = System.Windows.Visibility.Visible;
                //ByPass.Visibility = System.Windows.Visibility.Visible;
                ModelsButton.Visibility            = System.Windows.Visibility.Visible;
                Reprint.Visibility                 = System.Windows.Visibility.Visible;
                SetPlan.Visibility                 = System.Windows.Visibility.Visible;
                ManualIntegrationButton.Visibility = System.Windows.Visibility.Visible;
                break;
            }
        }
Exemple #8
0
        internal static void InitializeProgram()
        {
            /**/
            try
            {
                if (File.Exists(TEMP_FILE_NAME))
                {
                    File.Delete(TEMP_FILE_NAME);
                }
            }
            catch { }
            /**/
            Splash.Show();

            Splash.UpdateText("检查更新......");
            try
            {
                AutoUpdate.Updater updater = new AutoUpdate.Updater();
                if (updater.CheckUpdate() > 0)
                {
                    System.Diagnostics.Process.Start(UPDATE_EXECUTE_FILE);
                }
            }
            catch (Exception ex)
            {
                Splash.ShowMsgBox(string.Format(@"更新检查失败!{0}{1}", Environment.NewLine, ex.Message));
            }
            Thread.Sleep(100);

            Splash.UpdateText("初始化打印机......");
            PrinterManager.Init(Application.StartupPath);

            Thread.Sleep(100);
            Splash.Close();
        }
        static void Main(string[] args)
        {
            var logger  = new FileLogger("Log.txt");
            var manager = new PrinterManager(logger);

            bool repeat = false;

            System.Console.WriteLine("Welcome to printer manager.");
            DisplayMenu();
            string input = System.Console.ReadLine();

            switch (input)
            {
                //case "1":
                //    do
                //    {
                //        string name;
                //        string Model;

                //        System.Console.WriteLine("Please enter the printer name:");
                //        name = System.Console.ReadKey().ToString();
                //        System.Console.Clear();

                //        System.Console.WriteLine("Please enter the printer Model:");
                //        Model = System.Console.ReadKey().ToString();
                //        System.Console.Clear();
            }
        }
        void r_CSReprint(object sender, ReprintArgs e)
        {
            foreach (Model m in Models)
            {
                if (m.Code == e.Code)
                {
                    bool result = false;
                    int  count  = 0;
                    if (m.Name.Contains("Dummy"))
                    {
                        do
                        {
                            result =
                                PrinterManager.PrintCombSticker(m, e.Code + e.Date + e.SerialNo, PrinterManager.TemplatePath + m.Name + ".prn");
                        } while ((result == false) && (count < 3));
                    }
                    else
                    {
                        do
                        {
                            result = PrinterManager.PrintCombSticker(m, e.Code + e.Date + e.SerialNo);
                            count++;
                        } while ((result == false) && (count < 3));
                    }

                    break;
                }
            }
        }
Exemple #11
0
 void ExecuteW3()
 {
     WipeCombination.Add(String.Format("W3.{0}", "@BRIDGE_DETECT".Translate()));
    
     var alg = JudgeWipeAlgorithmFactory.CreateAlgorithm("W3",null);
     PrinterManager.getInstance().JudgeWipeRoutines.Add(alg);
 }
Exemple #12
0
 private void initialize()
 {
     Outputs  = new OutputCollection(NextModule);
     files    = new Queue <FileInfo>();
     printers = new PrinterManager(log);
     qLock    = new SpinLock();
 }
        void ExecuteAddLane()
        {
            Log4.PrinterLogger.Info("[A]Press Add button.");

            if (LaneContainer.Count < 2)
            {
                AddOneLaneSetting();

                if (LaneContainer.Count == 1)
                {
                    PrinterManager.getInstance().EnableLane1SettingUI(true);
                }
                else
                if (LaneContainer.Count == 2)
                {
                    PrinterManager.getInstance().EnableLane1SettingUI(true);
                    PrinterManager.getInstance().EnableLane2SettingUI(true);
                }
            }
            else
            {
                Log4.PrinterLogger.Info("[A]upport at most 2 lane.");
                TRMessageBox.Show("@SUPPORT_AT_MOST_2_LANE".Translate(), "@PRINTER_CENTER".Translate());
            }
        }
        void ExecuteDeleteLane()
        {
            Log4.PrinterLogger.Info("[A]Press Delete button.");

            if (LaneContainer.Count > 0)
            {
                RemoveOneLaneSetting();

                if (LaneContainer.Count == 1)
                {
                    PrinterManager.getInstance().EnableLane2SettingUI(false);
                }
                else
                if (LaneContainer.Count == 0)
                {
                    PrinterManager.getInstance().EnableLane1SettingUI(false);
                    PrinterManager.getInstance().EnableLane2SettingUI(false);
                }
            }
            else
            {
                Log4.PrinterLogger.Info("[A]There is no data.");
                TRMessageBox.Show("@THERE_IS_NO_DATA".Translate(), "@PRINTER_CENTER".Translate());
            }
        }
Exemple #15
0
        static void Main(string[] args)
        {
            PrinterBase printer;

            try
            {
                printer = PrinterManager.GetPrinter("Star TUP900 Presenter (TUP992)");

                // Use the following lines to manually specify the printer type
                // printer = PrinterManager.GetPrinter("Star TUP900 Presenter (TUP992)", PrinterType.TUP900);
                // printer = PrinterManager.GetPrinter("NII ExD NP-K205", PrinterType.Nii);
            }
            catch (InvalidOperationException)
            {
                Console.WriteLine("The printer type could not be guessed, please specify it manually.");
                Console.ReadKey();
                return;
            }

            var printerStatus = printer.GetStatus();

            WritePrinterStatus(printerStatus);

            // To get notified whenever the status of the printer changes, subscribe to the PrinterStatusChanged event.
            // printer.PrinterStatusChanged += Printer_PrinterStatusChanged;
            // printer.StartPoolingStatus();

            // Prints a text, feeds 5 lines, and then cuts the paper
            printer.Print("Hello world");
            printer.FeedLines(5);
            printer.CutPaper(CutPaperType.Full);

            Console.ReadKey();
        }
 private void PrinterFirmwareResults(PrinterFirmwareResult printerFirmware)
 {
     if (printerFirmware != null)
     {
         PrinterManager.Append(printerFirmware.Printer);
     }
 }
Exemple #17
0
        public static void Main(string[] args)
        {
            Console.WriteLine(DateTime.Now.AddDays(1).ToString());
            PrinterManager pm = new PrinterManager();
            pm.PrinterDatabase.Initialize();
         
            var printer = pm.PrinterDatabase.CreatePrinter("fufu");
            printer.PageCount = 10;
            printer.PageCountColor = 20;

            var now = DateTime.Now;

            printer.LastCheck = now.ToString();

            pm.PrinterDatabase.UpdatePrinter(printer);
            pm.ArchivDatabase.AddEntry(printer);

            Console.WriteLine("starting action");

            for (int i = 0; i < 10000; i++)
            {
                printer.PageCount += 10;
                printer.PageCountColor += 5;

                printer.LastCheck = now.AddDays(i+1).ToString();

                pm.PrinterDatabase.UpdatePrinter(printer);
                pm.ArchivDatabase.AddEntry(printer);

                Console.WriteLine("added " + i+1);
            }
            
            Console.WriteLine("done");
            Console.ReadLine();
        }
Exemple #18
0
 void ExecuteW5()
 {
     WipeCombination.Add(string.Format("W5.{0} ({1})", "@CONTINUE_FAIL_AT_SAME_COMPONENT".Translate(), ViewModelLocator.Atom.WipeVM.CmpFailTimes));
     object[] _params = { (object)ViewModelLocator.Atom.WipeVM.CmpFailTimes };
     var alg = JudgeWipeAlgorithmFactory.CreateAlgorithm("W5", _params);
     PrinterManager.getInstance().JudgeWipeRoutines.Add(alg);
 }
        public MainForm()
        {
            InitializeComponent();
            blankCard = Properties.Resources.CM_Cardblank;
            manager = new PrinterManager();

            manager.Registered += manager_Registered;
            manager.RegisterError += manager_RegisterError;
            manager.Unregistered += manager_Unregistered;
            manager.CardRequest += manager_CardRequest;
            manager.CardReady += manager_CardReady;
            manager.CardLoad += manager_CardLoad;
            manager.CardLoadSuccess += manager_CardLoadSuccess;
            manager.CardLoadFailed += manager_CardLoadFailed;
            manager.MagEncode += manager_MagEncode;
            manager.MagEncodeFailed += manager_MagEncodeFailed;
            manager.MagEncodeSuccess += manager_MagEncodeSuccess;
            manager.Print += manager_Print;
            manager.PrintFail += manager_PrintFail;
            manager.PrintSuccess += manager_PrintSuccess;
            manager.RFIDRead += manager_RFIDRead;
            manager.RFIDReadTimeout += manager_RFIDReadTimeout;
            manager.RFIDReadSuccess += manager_RFIDReadSuccess;
            manager.RFIDRemoved += manager_RFIDRemoved;
            manager.PrinterUpdate += manager_UpdateInfo;
            manager.Debug += manager_Debug;
        }
Exemple #20
0
 private void FrmPrinterFlyout_onPrinterAdded(object sender, EventArgs e)
 {
     if (sender is AtumPrinter)
     {
         PrinterManager.Save();
         LoadPrinters();
     }
 }
Exemple #21
0
        public override async UniTask ExecuteAsync(CancellationToken cancellationToken = default)
        {
            var printer = await GetOrAddPrinterAsync();

            if (cancellationToken.IsCancellationRequested)
            {
                return;
            }

            var printerMeta = PrinterManager.Configuration.GetMetadataOrDefault(printer.Id);

            if (!printer.Visible)
            {
                var showDuration = Assigned(ChangeVisibilityDuration) ? ChangeVisibilityDuration.Value : printerMeta.ChangeVisibilityDuration;
                printer.ChangeVisibilityAsync(true, showDuration).Forget();
            }

            if ((!Assigned(DefaultPrinter) && printerMeta.AutoDefault) || (Assigned(DefaultPrinter) && DefaultPrinter.Value))
            {
                if (PrinterManager.DefaultPrinterId != printer.Id)
                {
                    PrinterManager.DefaultPrinterId = printer.Id;
                }
                foreach (var otherPrinter in PrinterManager.GetAllActors())
                {
                    if (otherPrinter.Id != printer.Id && otherPrinter.Visible)
                    {
                        var otherPrinterMeta         = PrinterManager.Configuration.GetMetadataOrDefault(otherPrinter.Id);
                        var otherPrinterHideDuration = Assigned(ChangeVisibilityDuration) ? ChangeVisibilityDuration.Value : otherPrinterMeta.ChangeVisibilityDuration;
                        otherPrinter.ChangeVisibilityAsync(false, otherPrinterHideDuration).Forget();
                    }
                }
            }

            if (PlayAutoVoice)
            {
                if (AudioManager.Configuration.VoiceOverlapPolicy == VoiceOverlapPolicy.PreventCharacterOverlap && printer.AuthorId == AuthorId && !string.IsNullOrEmpty(AudioManager.GetPlayedVoicePath()))
                {
                    AudioManager.StopVoice();
                }
                AudioManager.PlayVoiceAsync(AutoVoicePath).Forget();
            }

            var shouldReset      = (!Assigned(ResetPrinter) && printerMeta.AutoReset) || (Assigned(ResetPrinter) && ResetPrinter.Value);
            var shouldAddBacklog = shouldReset || string.IsNullOrEmpty(printer.Text);

            if (shouldReset)
            {
                printer.Text           = string.Empty;
                printer.RevealProgress = 0f;
            }

            if ((Assigned(LineBreaks) && LineBreaks > 0) || (!Assigned(LineBreaks) && printerMeta.AutoLineBreak > 0 && !string.IsNullOrWhiteSpace(printer.Text)))
            {
                await new AppendLineBreak {
                    PrinterId = printer.Id, AuthorId = AuthorId, Count = Assigned(LineBreaks) ? LineBreaks.Value : printerMeta.AutoLineBreak
                }
            }
        public TemplateDemo(PrinterManager printerManager)
        {
            InitializeComponent();

            viewModel           = DataContext as TemplateDemoViewModel;
            this.printerManager = printerManager;

            TabControl.SelectionChanged += TabControl_SelectionChanged;
        }
Exemple #23
0
        public ComponentWindowThumbnailsFullHD(int TestID, string MT, int PrinterID, string Status, string Login)
        {
            //this.Topmost = true;
            _testID    = TestID;
            _mt        = MT;
            _printerID = PrinterID;
            _status    = Status;
            _login     = Login;

            _managers          = Managers.CreateManagers();
            _printerManager    = _managers.GetPrinterManager();
            _buttonListManager = _managers.GetButtonListManager();
            _autoUpdate        = AUTOUPDATE.AutoUpdate.CreateAutoUpdate();
            _mysqlManager      = _managers.GetMySQLManager();

            //_printer = _printerManager.GetPrinterByMT(_mt);
            _printer = _printerManager.GetPrinterByID(_printerID);
            _imageStatusButtonList    = new List <Image>();
            _dismantledComponentsList = new List <Component>();
            foreach (var value in _printer.GetComponentList())
            {
                _dismantledComponentsList.Add(value);
            }

            InitializeComponent();

            _timer          = new DispatcherTimer();
            _timer.Interval = TimeSpan.FromSeconds(1);
            _timer.Tick    += timer_Tick;
            _timer.Start();

            _maxButtonsOnPage = _maxColumnsOnPage * _maxRowsOnPage;
            _pageMax          = _dismantledComponentsList.Count / (_maxButtonsOnPage);
            if ((_dismantledComponentsList.Count % _maxButtonsOnPage) > 0)
            {
                _pageMax++;
            }
            if (_dismantledComponentsList.Count < _maxButtonsOnPage)
            {
                _pageMax = 1;
            }
            if (_pageMax > 1)
            {
                btnRight.Visibility = Visibility.Visible;
            }

            //CreateButtons
            CreateButtonList();
            ButtonSetVisibility();
            CreateImageButtonList();

            _pageCount = _mysqlManager.GetPageCountByTestID(_testID);

            this.lblPC.Content      = "Page Count: " + _pageCount;
            this.lblMT.Content      = "MT: " + _mt + " \tStrona: " + _pageCurrent + " / " + _pageMax;
            _dismantleStartDateTime = DateTime.Now;
        }
Exemple #24
0
        private void printerCorrectionFactorTabPanel1_ButtonNext_Click(object sender, EventArgs e)
        {
            PrinterManager.DefaultPrinter.CorrectionFactorX = (float)this.printerCorrectionFactorTabPanel1.txtCorrectionFactorX.Value / 10;
            PrinterManager.DefaultPrinter.CorrectionFactorY = (float)this.printerCorrectionFactorTabPanel1.txtCorrectionFactorY.Value / 10;
            PrinterManager.Save();


            this.Close();
        }
Exemple #25
0
        public SettingsDemo(PrinterManager printerManager)
        {
            InitializeComponent();

            viewModel           = DataContext as SettingsDemoViewModel;
            this.printerManager = printerManager;

            RetrieveSettings();
        }
        public PrinterDiscoveryDialog(PrinterManager printerManager)
        {
            InitializeComponent();

            this.printerManager = printerManager;
            viewModel           = DataContext as PrinterDiscoveryDialogViewModel;

            DiscoverPrinters();
        }
        private PrintConfigurationRequestDto CreateConfigurationRequest()
        {
            var request = new PrintConfigurationRequestDto();

            request.Name         = GetCurrentComputerName();
            request.AgentVersion = RegistryDataResolver.GetAgentVersion();
            request.Printers     = PrinterManager.GetAvailablePrinters();
            return(request);
        }
Exemple #28
0
 public string Execute(IList <string> input)
 {
     if (input.Count != 0)
     {
         throw new Exception("Invalid printwallet command arguments!");
     }
     ConsoleManager.Write(PrinterManager.PrintWallet(UserSession.User));
     return(string.Empty);
 }
Exemple #29
0
        private Managers()
        {
            _mysqlManager      = MySQLManager.CreateManager();
            _printerManager    = new PrinterManager();
            _buttonListManager = ButtonListManager.CreateManager();
            _autoUpdate        = AutoUpdate.CreateAutoUpdate();

            //_userManager = new UserManager();
        }
Exemple #30
0
        internal static void CreateNewPrinter(PrinterManager printerManager)
        {
            System.Console.Write("Printer name: ");
            string newName = System.Console.ReadLine();

            System.Console.Write("Model: ");
            string newModel = System.Console.ReadLine();

            printerManager.Add(new Printer(newName, newModel));
        }
Exemple #31
0
        public static void StartOfDay()
        {
            DayOfOperation.ProcessStartOfDay();
#if !DEMO
            PrinterManager.PrintLineToReceipt(DeviceManager.ActivePosPrinterLocal,
                                              Strings.StartOfDay + ": " + DateTime.Now);
            PrinterManager.PrintLineToReceipt(DeviceManager.ActivePosPrinterLocal);
#endif
            OrderEntryCommands.SetupNoOrderCommands();
        }
Exemple #32
0
        public string Execute(IList <string> input)
        {
            if (input.Count != 0)
            {
                throw new Exception("Invalid help command arguments!");
            }
            PrinterManager.PrintHelp();

            return("");
        }
        public void CheckPrinterOfflineNotification()
        {
            notified = false;
            var manager = new PrinterManager();

            manager.OnPrinterOffline += (o, e) => { notified = true; };

            manager.PollPrinter(new Printer() { HostName = "0.0.0.1" });


            Assert.IsTrue(notified);
        }
        public void PrinterManager_DeleteDataFiles_AutoRecreate_Test()
        {
            System.IO.File.Delete(DirectoryController.DataDirectoryLocation + "printer.db");

            var manager = new PrinterManager();
            
            var printer = new Printer();
            manager.LoadPrinterList();

            // Datei sollte wieder existieren
            Assert.IsTrue(System.IO.File.Exists(DirectoryController.DataDirectoryLocation + "printer.db"));
        }
        public void PrinterSaveAndLoad_Test()
        {
            var manager = new PrinterManager();
            manager.PrinterDatabase.Initialize();
            manager.PrinterDatabase.CreatePrinter("localhost");
            Assert.AreEqual(manager.LoadPrinterList().Count, 1);



            Config.Load();
            Config.Notifications.SendTo = "*****@*****.**";
            Config.Save();
        }
        public void PrinterManager_SupplyIntegrityFail_Test()
        {

            var manager = new PrinterManager();
            var printer = new Printer();
            printer.HostName = "localhost";

            printer.Supplies.Add(new Supply() { Description = "BlackToner" });

            manager.PollPrinter(printer);

            // der drucker muss nach dem pollen 0 supplies haben da localhost (der aktuelle pc) keine supplies
            // haben sollte
            Assert.AreEqual(printer.Supplies.Count, 0);
        }
        /// <summary>
        /// Initialisiert den Timer, initialisiert den "fetchingManager (PrinterManager)" und 
        /// weißt ihm die entsprechenden Ereignisshandler zu
        /// </summary>
        public PrinfoService()
        {
            this.ServiceName = "Prinfo.NET Service";
            this.EventLog.Log = "Application";

            timer = new System.Timers.Timer();
            timer.AutoReset = false;
            timer.Elapsed += new System.Timers.ElapsedEventHandler(PrinterFetchingAndNotifying);

            fetchingManager = new PrinterManager();
            fetchingManager.OnSupplyLow += new EventHandler<SupplyEventArgs>(fetchingManager_OnSupplyLow);
            fetchingManager.OnPrinterOffline += new EventHandler<PrinterEventArgs>(fetchingManager_OnPrinterOffline);
            fetchingManager.OnPrinterChecked += new EventHandler<PrinterEventArgs>(fetchingManager_OnPrinterChecked);
            fetchingManager.OnPrinterListChecked += new EventHandler<EventArgs>(fetchingManager_OnPrinterListChecked);

            reporting = new Thread(Reporting);
        }
        /// <summary>
        /// Reports the printer status at a specific time
        /// </summary>
        private void Reporting()
        {
            Config.Load();

            if (Config.Reporting.SimpleMailReport || Config.Reporting.ExcelMailReport)
            {
                Logger.Log("Reporting started", LogType.Service);
                PrinterManager manager = new PrinterManager();

                while (true)
                {
                    Config.Load();

                    Logger.Log("Mail report invoked", LogType.Service);

                    DateTime now = DateTime.Now;

                    if (now <= Config.Reporting.TimeToStart)
                    {
                        Logger.Log("Reporting sleeping for " + (Config.Reporting.TimeToStart - now) , LogType.Service);
                        Thread.Sleep(Config.Reporting.TimeToStart - now);
                    }
                    else
                    {
                        Logger.Log("Reporting sleeping for " + (Config.Reporting.TimeToStart.AddHours(24) - now), LogType.Service);
                        Thread.Sleep(Config.Reporting.TimeToStart.AddHours(24) - now);
                    }

                    manager.LoadPrinterList();

                    // no need to write the checked printers back to the database
                    // no database update is performed after
                    manager.ParallelPollPrinterList();

                    MailReportFormatter mailReportFormatter;

                    ReportMessage message = null;

                    if (Config.Reporting.SimpleMailReport)
                    {
                        mailReportFormatter = new TextMailReportFormatter();
                        mailReportFormatter.AddPrinterList(manager.PrinterList);

                        message = mailReportFormatter.GenerateReportMessage();
                        try
                        {
                            Mailer.SendMailOverSmtp(Config.Reporting.SendReportTo, "Prinfo.NET Reporting", message.Message);
                        }
                        catch (Exception ex)
                        {
                            Logger.Log(GlobalizationHelper.LibraryResource.GetString("smtp_error") + ex.Message, LogType.Error);
                        }
                    }
                    if (Config.Reporting.ExcelMailReport)
                    {
                        mailReportFormatter = new ExcelMailReportFormatter();
                        mailReportFormatter.AddPrinterList(manager.PrinterList);

                        message = mailReportFormatter.GenerateReportMessage();

                        try
                        {
                            Mailer.SendMailOverSmtp(Config.Reporting.SendReportTo, "Prinfo.NET Reporting", message.Message, message.Attachment);
                        }
                        catch (Exception ex)
                        {
                            Logger.Log(GlobalizationHelper.LibraryResource.GetString("smtp_error") + ex.Message, LogType.Error);
                        }
                    }
                   
                
                }
            }
        }
Exemple #39
0
        /// <summary>
        /// main entry point
        /// </summary>
        /// <param name="args"></param>
        static void Main(string[] args)
        {
            var manager = new PrinterManager();
            var drucker = manager.PrinterDatabase.CreatePrinter("localhost");
            manager.PollPrinter(drucker);

            manager.PrinterDatabase.UpdatePrinter(drucker);


            Console.Title = "PICO - PRINFO INTERACTIVE CONSOLE";

            Out("PICO - PRINFO INTERACTIVE CONSOLE" + Environment.NewLine + "--------------------------------------"  + Environment.NewLine);
            Out(resi.GetString("startup-load"));
            Status();
            Out(resi.GetString("type-help"));

            string command = String.Empty;

            #region pico command loop

            while (true)
            {
                Console.Write("pico> ");
                command = In();

                if (command.Equals("help") || command.Equals("?"))
                    HelpMessage();
                else if (command.Equals("exit"))
                    break;
                else if (command.Equals("clear"))
                    Console.Clear();
                else if (command.Equals("status"))
                    Status();
                else if (command.Contains("add printer"))
                {
                    AddPrinter(command);
                }
                else if (command.Equals("check-all"))
                {
                    CheckPrinterList();
                }
                else if (command.Equals("init-db"))
                {
                    new PrinterDatabase().Initialize();
                    Out("Data wiped successfully");
                }
                else if (command.Contains("service"))
                {
                    ExecuteServiceCommand(command);
                }
                else if (command.Contains("switch"))
                {
                    SwitchLanguage(command);
                }
                else if (command.Contains("import"))
                {
                    Import(command);
                }
                else if (command.Equals("print"))
                {
                    Console.WriteLine();
                    printerManager.LoadPrinterList();
                    foreach (Printer p in printerManager)
                    {
                        Console.WriteLine(p);
                    }
                }
                else
                {
                    Out(resi.GetString("unknown-command"));
                }
            }
            #endregion
        }
Exemple #40
0
        private void ShowInfoBox()
        {
            PrinterManager mangi = new PrinterManager();
            mangi.LoadPrinterList();

            int supplyCount = 0;

            foreach (var printer in mangi)
            {
                supplyCount += printer.Supplies.Count;
            }

            MessageBox.Show("Status des Prinfo.NET Dienstes: " + ServiceState() + ".Derzeit sind " + mangi.PrinterList.Count + " Drucker in der Datenbank. Diese besitzen insgesamt " + supplyCount + " Verbrauchsteile. Prinfo.NET Bibliotheksversion: " + Config.Version.Description, "Prinfo.NET Info", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
        
        }
 public _Default()
 {
     printerManager = new PrinterManager(Directory.GetParent(AppDomain.CurrentDomain.BaseDirectory).Parent.FullName);
     
 }
 private void StartManager(PrinterManager manager)
 {
     manager.DoWork();
 }