Windows have a built-in tool called “Driver Verifier Manager“. This tool is built to verify and validate device drivers installed on Windows System. Driver Verifier Manager is capable of a variety of functions such as displaying all drivers installed on the computer, Signed and unsigned driver list, schedule & verifying drivers, etc.

Read More: How to backup printer drivers?

How to Open Windows Driver Verifier?

Click the Windows Start button and type in “Verifier

search driver verifier start
Search Driver Verifier Start

Select Verifier from the result.

Windows driver verifier started first screen
Windows Driver Verifier Manager – The first screen

Now Driver Verifer Manager is open. Several tasks/options are listed in the first window.

  1. Create standard settings
  2. Create custom settings (for code developers)
  3. Delete existing settings
  4. Display existing setings
  5. Dislplay information abount the curently verified drivers.

How to verify all drivers installed on your computer using Driver Verifer Manager?

Open verifier and select “Create standard settings”, then click the “Next” button. Select “Automatically select all drivers installed on this computer” and click the Next button. Now you can see a message saying that “You must restart this computer for the changes to take effect”. Restart your computer to start all driver verification.

Windows Driver Verifier Manager search driver verifier select all drivers
Windows Driver Verifier Manager search driver verifier select all drivers
Windows Driver Verifier Manager - all driver verification - restart PC
Windows Driver Verifier Manager – all driver verification – restart PC
Windows Driver Verifier Manager search driver verifier started first screen unsigned driver
Windows Driver Verifier Manager search driver verifier started first screen unsigned driver

How to get verified drivers list in Windows?

Windows Driver Verifier Manager
Windows Driver Verifier Manager
Windows Driver Verifier Manager Display verified drivers
Windows Driver Verifier Manager Display verified drivers
Windows Driver Verifier Manager automatically select unsigned drivers
Windows Driver Verifier Manager automatically select unsigned drivers

Driver Verifier – Command Line Usage And Syntax


Command: verifier

Copyright (c) Microsoft Corporation. All rights reserved.

SYNTAX:

    verifier {/? | /help}
    verifier /standard /all
    verifier /standard /driver <name> [<name> ...]
    verifier {/ruleclasses | /rc} <options> [<ruleclass_1> <ruleclass_2> ...] /all
    verifier /flags <options> [<options> ...] /all
    verifier /flags <options> [<options> ...] /driver <name> [<name> ...]
    verifier /rules {query | reset | default <id> | disable <id>}
    verifier /query
    verifier /querysettings
    verifier /bootmode {persistent | resetonbootfail | oneboot | resetonunusualshutdown}
    verifier /persistthroughupgrade
    verifier /reset
    verifier /faults [probability [pool_tags [applications [delay_minutes]]]]
    verifier /faultssystematic [<options> ...]
    verifier /log <file_name> [/interval <seconds>]
    verifier /volatile /flags <options> [<options> ...]
    verifier /volatile /adddriver <name> [<name> ...]
    verifier /volatile /removedriver <name> [<name> ...]
    verifier /volatile /faults [probability [pool_tags [applications
                [delay_minutes]]]]
    verifier /domain {wdm | ndis | ks | audio} [rules.all | rules.default ]
                /driver ... [/logging | /livedump]
    verifier /logging
    verifier /livedump

PARAMETERS:

    /? or /help
        Displays this help message.

    /standard
        Specifies standard Driver Verifier flags.

    /all
        Specifies that all installed drivers will be verified after the next
        boot.

    /driver <name> [<name> ...]
        Specifies one or more drivers (image names) that will be verified.
        Wildcard values (e.g. n*.sys) are not supported.

    /driver.exclude <name> [<name> ...]
        Specifies one or more drivers (image names) that will be excluded
        from verification. This parameter is applicable only if all drivers
        are selected for verification. Wildcard values (e.g. n*.sys) are not
        supported.

    /flags <options> [<options> ...]
        Specifies one or more options that should be enabled for verification.
        Flags are applied to all drivers being checked by Driver Verifier. The
        provided options values must be either in decimal, hexadecimal ("0x"
        prefix), octal ("0o" prefix) or binary ("0b" prefix) format.

        Standard Flags:
          Standard Driver Verifier options can be specified using '/standard'.
          WDF verification is included in /standard but is not shown here.

          0x00000001 (bit  0) - Special pool
          0x00000002 (bit  1) - Force IRQL checking
          0x00000008 (bit  3) - Pool tracking
          0x00000010 (bit  4) - I/O verification
          0x00000020 (bit  5) - Deadlock detection
          0x00000080 (bit  7) - DMA checking
          0x00000100 (bit  8) - Security checks
          0x00000800 (bit 11) - Miscellaneous checks
          0x00020000 (bit 17) - DDI compliance checking

        Additional Flags:
          These flags are intended for specific scenario testing. Flags marked
          with (*) require I/O Verification (bit 4) that will be automatically
          enabled. Flags marked with (**) support disabling of individual
          rules.

          0x00000004 (bit  2) - Randomized low resources simulation
          0x00000200 (bit  9) - Force pending I/O requests (*)
          0x00000400 (bit 10) - IRP logging (*)
          0x00002000 (bit 13) - Invariant MDL checking for stack (*)
          0x00004000 (bit 14) - Invariant MDL checking for driver (*)
          0x00008000 (bit 15) - Power framework delay fuzzing
          0x00010000 (bit 16) - Port/miniport interface checking
          0x00040000 (bit 18) - Systematic low resources simulation
          0x00080000 (bit 19) - DDI compliance checking (additional)
          0x00200000 (bit 21) - NDIS/WIFI verification (**)
          0x00800000 (bit 23) - Kernel synchronization delay fuzzing
          0x01000000 (bit 24) - VM switch verification
          0x02000000 (bit 25) - Code integrity checks

    /ruleclasses or /rc [<ruleclass_1> <ruleclass_2> ... <ruleclass_k>]
        This parameter is larger set of '/flags' above. While '/flags' is
        limited to 32 bit bitmap expression, this can include more than 32
        verification classes. Each positive decimal integer represents a
        verification class. Multiple classes can be expressed by separating
        each class id with space character. Following rule classes IDs are
        available and leading 0's can be omitted.

        Standard Rule Classes:

                   1 - Special pool
                   2 - Force IRQL checking
                   4 - Pool tracking
                   5 - I/O verification
                   6 - Deadlock detection
                   8 - DMA checking
                   9 - Security checks
                  12 - Miscellaneous checks
                  18 - DDI compliance checking
                  34 - WDF Verification

        Additional Rule Classes:
          These rule classes are intended for specific scenario testing. Rule
          classes are marked with (*) require I/O Verification (5) that will
          be automatically enabled. Flags marked with (**) support disabling
          of individual rules.

                   3 - Randomized low resources simulation
                  10 - Force pending I/O requests (*)
                  11 - IRP logging (*)
                  14 - Invariant MDL checking for stack (*)
                  15 - Invariant MDL checking for driver (*)
                  16 - Power framework delay fuzzing
                  17 - Port/miniport interface checking
                  19 - Systematic low resources simulation
                  20 - DDI compliance checking (additional)
                  22 - NDIS/WIFI verification (**)
                  24 - Kernel synchronization delay fuzzing
                  25 - VM switch verification
                  26 - Code integrity checks

    /log.code_integrity
        This option suppresses Code Integrity violation breaks and collects
        only statistics for verified drivers. Statistics could be extracted
        via /log option or kernel debugger. This parameter is applicable only
        if Code Integrity checks are enabled.

    /rules {query | reset | default <id> | disable <id>}
        Specifies rules level control (advanced).

          query           Shows current status of controllable rules.
          reset           Resets all rules to their default state.
          default <id>    Sets rule ID to its default state.
          disable <id>    Disables specified rule ID.

    /query
        Display runtime Driver Verifier statistics and settings.

    /querysettings
        Displays a summary of the options and drivers that are currently
        enabled, or options and drivers that will be verified after the
        next boot. The display does not include drivers and options added
        using /volatile.

    /bootmode
        Specifies the Driver Verifier boot mode. This option requires system
        reboot to take effect.

          persistent        Ensures that Driver Verifier settings are
                            persistent across reboots. This is the default
                            value.
          resetonbootfail   Disables Driver Verifier for subsequent reboots
                            if the system failed to start.
          resetonunusualshutdown
                            Driver Verifier persists until unusual shutdown
                            happens. Its abbrevation, 'rous', can be used.
          oneboot           Enables Driver Verifier only for the next boot.

    /persistthroughupgrade
        Makes the Driver Verifier settings persist through upgrade. Driver
        Verifier will be active during system upgrade.

    /reset
        Clears Driver Verifier flags and driver settings. This option requires
        system reboot to take effect.

    /faults [probability [pool_tags [applications [delay_minutes]]]]
        Enable the Randomized low resources simulation feature and optionally
        control parameters for the Randomized low resources simulation.

          Probability     Specifies the probability that Driver Verifier will
                          fail a given allocation. The value represents the
                          number of chances in 10,000 that Driver Verifier will
                          fail the allocation. The default value 600, means
                          600/10000 or 6.
          Pool Tags:      Specifies a space separated list of the pool tags to
                          be injected with faults. By default, any pool
                          allocation can be injected with faults.
          Applications    Specifies a space separated list of image file names
                          (an executable) that will be injected with faults. By
                          default, any pool allocation can be injected with
                          faults.
          DelayMinutes    Specifies the number of minutes after booting during
                          which Driver Verifier does not intentionally fail any
                          allocations. This delay allows the drivers to load
                          and the system to stabilize before the test begins.
                          The default value is 8 minutes.

    /faultssystematic [<options> ...]
        Controls the Systematic low resources simulation parameters.

          enableboottime          Enables fault injections across reboots.
          disableboottime         Disables fault injections across reboots.
                                  This is the default value.
          recordboottime          Enables fault injections in 'what if' mode
                                  across reboots.
          resetboottime           Disables fault injections across reboots and
                                  clears the stack exclusion list.
          enableruntime           Dynamically enables fault injections.
          disableruntime          Dynamically disables fault injections.
          recordruntime           Dynamically enables fault injections in
                                  'what if' mode.
          resetruntime            Dynamically disables fault injections and
                                  clears the previously faulted stack list.
          querystatistics         Shows the current fault injection statistics.
          incrementcounter        Increments the test pass counter used to
                                  identify when a fault was injected.
          getstackid <counter>    Retrieves the indicated injected stack id.
          excludestack <stack_id> Excludes the stack from fault injection.

    /log <file_name> [/interval <seconds>]
        Creates a log file with the specified name and periodically writes the
        runtime statistics to this file. The interval between log file updates
        is controlled by the '/interval' parameter. The default value is 30
        seconds. Use CTRL+C to close the log and return.

    /volatile
        Changes Driver Verifier settings without rebooting the computer.
        Volatile settings take effect immediately and are in effect until the
        next system reboot.

    /volatile /adddriver <name> [<name> ...]
        Starts the verification for the specified driver or drivers.

    /volatile /removedriver <name> [<name> ...]
        Stops the verification for the specified driver or drivers.

    /domain {wdm | ndis | ks | audio} [rules.all | rules.default] /driver ...
        [/logging | /livedump]
        Controls the verifier extension settings. The following verifier
        extension types are supported:

          wdm               Enabled verifier extension for WDM drivers.
          ndis              Enabled verifier extension for networking drivers.
          ks                Enabled verifier extension for kernel mode
                            streaming drivers.
          audio             Enabled verifier extension for audio drivers.

        The following extension options are supported:

          rules.default     Enables default validation rules for the selected
                            verifier extension.
          rules.all         Enables all validation rules for the selected
                            verifier extension.

        /logging
          Enables logging for violated rules detected by the selected verifier
          extensions.

        /livedump
          Enables live memory dump collection for violated rules detected by
          the selected verifier extensions.