コード例 #1
0
        /// <summary>
        /// This method returns the first available Barcode Scanner. To enumerate and find a particular device use the device enumeration code.
        /// </summary>
        /// <returns>a boolean value based on whether it found a compatible scanner connected</returns>
        private async Task <bool> CreateDefaultScannerObjectAsync(BarcodeScannerInstance instance)
        {
            BarcodeScanner scanner = null;

            scanner = await BarcodeScanner.GetDefaultAsync();

            if (scanner == null)
            {
                rootPage.NotifyUser("Barcode scanner not found. Please connect a barcode scanner.", NotifyType.ErrorMessage);
                return(false);
            }

            switch (instance)
            {
            case BarcodeScannerInstance.Instance1:
                scannerInstance1 = scanner;
                break;

            case BarcodeScannerInstance.Instance2:
                scannerInstance2 = scanner;
                break;

            default:
                return(false);
            }

            return(true);
        }
コード例 #2
0
        public async void GetScanningDevice()
        {
            _barcodeScanner = await BarcodeScanner.GetDefaultAsync();

            if (_barcodeScanner != null)
            {
                _claimedBarcodeScanner = await _barcodeScanner.ClaimScannerAsync();
            }
            else
            {
                ErrorMsg = "scanning device not found";
                return;
            }
            if (_claimedBarcodeScanner != null)
            {
                _claimedBarcodeScanner.DataReceived       += ClaimedBarcode_DataRecieved;
                _claimedBarcodeScanner.IsDecodeDataEnabled = true;
                await _claimedBarcodeScanner.EnableAsync();
            }
            else
            {
                ErrorMsg = "scanning device cant be claimed ";
                return;
            }
        }
コード例 #3
0
        /// <summary>
        /// This method returns the first available Barcode Scanner. To enumerate and find a particular device use the device enumeration code.
        /// </summary>
        /// <returns>a boolean value based on whether it found a compatible scanner connected</returns>
        private async Task <bool> CreateDefaultScannerObjectAsync(BarcodeScannerInstance instance)
        {
            BarcodeScanner scanner = null;

            scanner = await BarcodeScanner.GetDefaultAsync();

            if (scanner == null)
            {
                UpdateOutput("Scanner not found. Please connect a Barcode Scanner.");
                return(false);
            }

            switch (instance)
            {
            case BarcodeScannerInstance.Instance1:
                scannerInstance1 = scanner;
                UpdateOutput("Instance1 Default Barcode Scanner created.");
                break;

            case BarcodeScannerInstance.Instance2:
                scannerInstance2 = scanner;
                UpdateOutput("Instance2 Default Barcode Scanner created.");
                break;

            default:
                return(false);
            }

            return(true);
        }
コード例 #4
0
        private async Task <bool> CreateDefaultScannerObject()
        {
            if (scanner == null)
            {
                Debug.WriteLine("Creating barcode scanner object: Retrieving default device");

                try
                {
                    scanner = await BarcodeScanner.GetDefaultAsync();
                }
                catch (Exception ex)
                {
                    Debug.WriteLine("Could not retrieve default barcode device: " + ex.Message);
                    return(false);
                }

                if (scanner == null)
                {
                    Debug.WriteLine("Barcode scanner not found. Please connect a barcode scanner.");
                    return(false);
                }
            }

            return(true);
        }
コード例 #5
0
        private async void GetScanner()
        {
            // only finds the first POS device connected to the pc, ok if only one POS device is connected
            barcodeScanner = await BarcodeScanner.GetDefaultAsync();

            // for later to find a specific device
            //string selector = BarcodeScanner.GetDeviceSelector();
            //DeviceInformationCollection deviceCollection = await DeviceInformation.FindAllAsync(selector);

            //foreach (DeviceInformation devInfo in deviceCollection)
            //{
            //    Debug.WriteLine("{0} {1}", devInfo.Name, devInfo.Id);
            //    if (devInfo.Name.Contains("1202"))
            //    {
            //        Debug.WriteLine("Found one");
            //    }
            //}


            //claim device
            if (barcodeScanner != null)
            {
                try
                {
                    claimedBarcodeScanner = await barcodeScanner.ClaimScannerAsync();

                    if (claimedBarcodeScanner != null)
                    {
                        // keep device claimed no matter what
                        claimedBarcodeScanner.ReleaseDeviceRequested += claimedBarcodeScanner_ReleaseDeviceRequested;
                        // enable decoding properties
                        claimedBarcodeScanner.DataReceived       += claimedBarcodeScanner_DataReceived;
                        claimedBarcodeScanner.IsDecodeDataEnabled = true;
                        await claimedBarcodeScanner.EnableAsync();
                    }
                    Debug.WriteLine("ToString | ClaimedBarcodeObject: " + claimedBarcodeScanner.ToString());
                }
                catch (Exception ex)
                {
                    Debug.WriteLine("EX: ClaimScannerAsync() - " + ex.Message);
                }
            }
            else
            {
                Debug.WriteLine("No POS-Barcode Scanner found.");
            }


            //unclaim a device
            //if (claimedBarcodeScanner != null)
            //{
            //    claimedBarcodeScanner.Dispose();
            //    claimedBarcodeScanner = null;
            //}
        }
コード例 #6
0
        /// <summary>
        /// Creates the default barcode scanner.
        /// </summary>
        /// <returns>true if barcode scanner is created. Otherwise returns false</returns>
        private async Task <bool> CreateDefaultScannerObject()
        {
            if (scanner == null)
            {
                scanner = await BarcodeScanner.GetDefaultAsync();

                if (scanner == null)
                {
                    return(false);
                }
            }
            return(true);
        }
        /// <summary>
        /// Creates the default barcode scanner.
        /// </summary>
        /// <returns>true if barcode scanner is created. Otherwise returns false</returns>
        private async Task <bool> CreateDefaultScannerObject()
        {
            if (scanner == null)
            {
                rootPage.NotifyUser("Creating barcode scanner object.", NotifyType.StatusMessage);
                scanner = await BarcodeScanner.GetDefaultAsync();

                if (scanner == null)
                {
                    rootPage.NotifyUser("Barcode scanner not found. Please connect a barcode scanner.", NotifyType.ErrorMessage);
                    return(false);
                }
            }
            return(true);
        }
コード例 #8
0
        //<SnippetCreateBarcodeScanner>
        //Creates a barcode scanner.

        private async Task <bool> CreateDefaultScannerObject()
        {
            if (scanner == null)
            {
                scanner = await BarcodeScanner.GetDefaultAsync();

                if (scanner != null)
                {
                    // UpdateOutput("Default Barcode Scanner created.");
                    // UpdateOutput("Device Id is:" + scanner.DeviceId);
                }
                else
                {
                    // UpdateOutput("Barcode Scanner not found. Please connect a Barcode Scanner.");
                    return(false);
                }
            }
            return(true);
        }
コード例 #9
0
        private async void buttonEnable_Click(object sender, RoutedEventArgs e)
        {
            scanner = await BarcodeScanner.GetDefaultAsync();

            if (claimedScanner != null)
            {
                claimedScanner.Dispose();
            }
            claimedScanner = await scanner.ClaimScannerAsync();

            claimedScanner.DataReceived += ClamedScanner_DataReceived;
            await claimedScanner.EnableAsync();

            claimedScanner.IsDecodeDataEnabled = true;

            await claimedScanner.SetActiveSymbologiesAsync(new uint[] {
                BarcodeSymbologies.Aztec,
                BarcodeSymbologies.AusPost,
                BarcodeSymbologies.CanPost,
                BarcodeSymbologies.Codabar,
                BarcodeSymbologies.Codablock128,
                BarcodeSymbologies.Code11,
                BarcodeSymbologies.Code128,
                BarcodeSymbologies.Code39,
                BarcodeSymbologies.Code39Ex,
                BarcodeSymbologies.DataMatrix,
                BarcodeSymbologies.Ean13,
                BarcodeSymbologies.Ean8,
                BarcodeSymbologies.Gs1128,
                BarcodeSymbologies.Gs1DatabarType1,
                BarcodeSymbologies.Gs1DatabarType2,
                BarcodeSymbologies.Gs1DatabarType3,
                BarcodeSymbologies.Pdf417,
                BarcodeSymbologies.Qr,
                BarcodeSymbologies.OcrB,
                BarcodeSymbologies.UccEan128,
                BarcodeSymbologies.Upca,
                BarcodeSymbologies.Upce,
                BarcodeSymbologies.UsPostNet,
            });

            changeButtonEnable(true);
        }