Symbol Driver


The barcode scanner driver sample demonstrates how to create a universal driver for a barcode scanner and is intended to be used as a template for creating a new barcode scanner driver. The sample uses the User-Mode Driver Framework (UMDF) 2.0 and demonstrates basic functionality such as claiming the device for exclusive access. The sample driver can be compiled and deployed on x86, amd64, and ARM platforms. For more information on universal drivers, go to Getting Started with Universal Windows drivers.

  1. The!sym noisy and!sym quiet extensions control noisy symbol loading. For details and for other methods of displaying and changing this option, see SYMOPTDEBUG. The!sym prompts and!sym prompts off extensions control whether authentication dialogs are displayed when SymSrv encounters an authentication request.
  2. In this mode, a Symbol scanner device attached to a personal computer through a USB cable functions as if the equipment is connected through a computer port. This driver makes a virtual computer port in the personal computer matching the equipment that is connected through USB.
  3. Find information on drivers, software, support, downloads and more for your Zebra Symbol LS2208 General Purpose Barcode Scanner.
  4. Symbol files make it easier to debug your code. The easiest way to get Windows symbols is to use the Microsoft public symbol server. The symbol server makes symbols available to your debugging tools as needed. After a symbol file is downloaded from the symbol server it is cached on the local computer for quick access.


Fusion Wireless Driver Software IP Output Plug-In for DataWedge - Windows KB Tool for MC32 - Windows MC3200 Clean Boot Package For Windows CE Mobility Extensions OSUpdate Package Builder Persist Memory Bar for Windows CE 5.0, CE 6.0 & CE 7.0 SCN Firmware.

  • Windows 10

  • Microsoft Visual Studio (any version)

The Windows Software Development Kit (SDK) 10 is also required, but this is installed as part of Microsoft Visual Studio.


The sample driver does not require any barcode scanner hardware to function because it operates on a software device. If you have a hardware device you wish to use with the sample, you can still use the driver by adding the device's hardware ID to the INF file.

Symbol Usb Driver Windows 7

Download and extract the sample

The Windows driver samples are available on GitHub.

  1. Download This file contains all Windows Driver Kit (WDK) samples.

  2. Extract to the location of your choice on your development machine. This location will be referred to as <sample_root> throughout the remainder of this article.

Open the driver solution in Visual Studio

  1. In Windows Explorer, navigate to the <sample_root>posdriversbarcodescanner folder.

  2. Double-click the solution file, BarcodeScanner.sln to open the solution with Visual Studio.

  3. The project zip file was downloaded from the Internet so you may see a security warning when you open the solution. If you do, select OK to finish loading the project.

  4. In Visual Studio, locate Solution Explorer. If this is not already open, select Solution Explorer from the View menu. In Solution Explorer, you can see the project and the source files it contains.

Build the sample using Visual Studio

Truck driver symbol
  1. From the Standard toolbar in Visual Studio, select the Solution Platform that matches your operating system platform. For example, if you are using a 64-bit version of Windows, select x64.


    If targeting the ARM platform, you will need to use the configuration manager to add ARM to your list of targets.

  2. Select Build Solution from the Build menu.

Install the driver

  1. When built, the driver was signed with a test certification. In order to install the driver for testing, you need to change your boot configuration to allow drivers signed with a test certificate to load. To change the setting, open up an elevated command prompt and enter the command:

    bcdedit.exe /set TESTSIGNING on

  2. Reboot your machine.


    If test-signing had been enabled previously, a reboot is not necessary.

  3. From an elevated command prompt, navigate to the folder where your project was built. If you created an x64 debug build, this folder will be <project_root>x64DebugSampleBarcodeScannerDrv.

    In that folder, you will see the following files:

    SampleBarcodeScannerDrv.dllThe driver file.
    SampleBarcodeScannerDrv.infAn INF file that contains information needed to install the driver.
    samplebarcodescannerdrv.catA signed catalog file, which serves as the signature for the entire package.
  4. Identify the path to the Device Console utility (devcon.exe) that matches your OS and driver platform. The default locations for the x64 version is C:Program Files (x86)Windows Kits10Toolsx64.

  5. Type the following command, replacing <devcon_path> with the path to the devcon.exe file that you located in the previous step.

    <devcon_path>devcon.exe install SampleBarcodeScannerDrv.inf RootSampleBarcodeScannerDrv

  6. You will see a Windows Security dialog informing you that the publisher of the driver can't be verified. This is because the driver was signed with a test certificate. Select Install this driver software anyway. In a moment, you will see confirmation that your driver was installed correctly.

If the Device Console utility wasn't able to install the driver, confirm that you were using the one that matches your current OS platform and the platform of the driver.

View the device in Device Manager

  1. Open Device Manager. This can be done many ways, but if you're still in a command prompt then type devmgmt.

  2. In Device Manager, choose Devices by type from the View menu.

  3. Your device is listed under the Samples node.


The !sym extension controls noisy symbol loading and symbol prompts.


Activates noisy symbol loading.

Deactivates noisy symbol loading.

Allows authentication dialog boxes to appear when SymSrv receives an authentication request.

prompts off
Suppresses all authentication dialog boxes when SymSrv receives an authentication request. This may result in SymSrv being unable to access symbols over the internet.

Symbol Driver Download


Windows 2000


Windows XP and later



If the !sym extension is used with no arguments, the current state of noisy symbol loading and symbol prompting is displayed.

The !sym noisy and !sym quiet extensions control noisy symbol loading. For details and for other methods of displaying and changing this option, see SYMOPT_DEBUG.

The !sym prompts and !sym prompts off extensions control whether authentication dialogs are displayed when SymSrv encounters an authentication request. These commands must be followed by .reload (Reload Module) for them to take effect. Authentication requests may be sent by proxy servers, internet firewalls, smart card readers, and secure websites. For details and for other methods of changing this option, see Firewalls and Proxy Servers.

Note Noisy symbol loading should not be confused with noisy source loading -- that is controlled by the .srcnoisy (Noisy Source Loading) command.