public void Stop() { if (!started) { return; } TempSpooler.Stop(); //listen changes should be changed before removing secure printers MyDLPEP.PrinterUtils.listenChanges = false; RemoveLocalSecurePrinters(); started = false; }
public void Start() { if (started) { return; } PrinterPrefix = Configuration.PrinterPrefix; printerPermissions = new Dictionary <string, string>(); spooledNativePrinters = new ArrayList(); if (CheckAndInstallPortMonitor()) { if (CheckAndInstallXPSDriver()) { //Correct incase of an improper shutdown RemoveLocalSecurePrinters(); if (TempSpooler.Start()) { Thread changeListeningThread = new Thread(new ThreadStart(MyDLPEP.PrinterUtils.StartBlockingLocalChangeListener)); changeListeningThread.Start(); started = true; Configuration.GetLoggedOnUser(); HandlePrinterConnectionChange(); InstallLocalSecurePrinters(); } else { MyDLPEP.PrinterUtils.listenChanges = false; RemoveLocalSecurePrinters(); } } } if (!started) { SvcController.StartService("Spooler", 5000); } }