public void StopScannListener() { if (scanListener != null) { scanListener.UnSubscribeForBarcodeEvents(); if (ScanListenerObject.ListConnectedScanners != null) { foreach (Scanner scanner in ScanListenerObject.ListConnectedScanners) { SetSpecificAttribute(scanner, (int)AppDefs.LEDCode.Led3On); SetSpecificAttribute(scanner, (int)AppDefs.BeepCode.OneLongLow); } SubscribeScanEvent(); } else { FailedAppEvent?.Invoke("AppFailed"); } ScanListenerObject = scanListener = null; COM.CloseConnection(); Log.Write("Oblect ScnListener is deleted, COM object is closed", this); try { threadDictionary["BackgroundScannersThread"].Abort(); FailedAppEvent?.Invoke("AppFailed"); } catch { } } else { FailedAppEvent?.Invoke("AppFailed"); } }
private void Start() { try { //ScanProductOrBoxProperties = ScannerAction.Undefined; SubscribeCheckCreatedScannerListerEvent(); COM.OpenConnection(); if (scanListener == null) { scanListener = new ScanListener(COM.CoreScannerObject); } ScanListenerObject = scanListener; if (ScanListenerObject.ListConnectedScanners != null) { foreach (Scanner scanner in ScanListenerObject.ListConnectedScanners) { SetSpecificAttribute(scanner, (int)AppDefs.LEDCode.Led3Off); SetSpecificAttribute(scanner, (int)AppDefs.BeepCode.OneLongLow); } SubscribeScanEvent(); } else { StopScannListener(); } } catch { StopScannListener(); } }