none
Command line to list out every device's Name, Driver Provider and Driver Version? RRS feed

  • Question

  • Hi,

    As you all know, the "Driver" tab of every device inside Device Manager shows a device's name, driver provider and driver version (as shown in the image)


    Is there a command line which could list out (in table format) the name, driver provider and driver version of every device (without grouping them within nodes if possible)?

    I'm only interested in device, not driver.  I carefully chose the word "device" instead of "driver" because a device can be made up of several driver (files) which could be at different version amongst them.

    I've tried devcon (command is devcon find *) but it doesn't match what I'm looking for -- it's showing a lot of things that I don't even know what they are.  And there's no driver provider or version.

    I've also treid driverquery, but it lists driver files instead of device, and doesn't show version number.

    Is there other alternatives?

    TIA

    Friday, February 10, 2012 5:13 PM

Answers

All replies

  • Friday, February 10, 2012 6:17 PM
  • Thanks.  As a quick try, the script seems to show what I'm looking for.  Nice :)
    Friday, February 10, 2012 6:23 PM
  •  

    Hi Horinius,

    That seems your problem has been solved by the suggestion of FZB, so I will mark his reply as an answer, it could help other communities here who have the same request.

     

    Thanks for your understanding.

    Regards,

    Leo   Huang

    TechNet Subscriber Support

    If you are TechNet Subscription user and have any feedback on our support quality, please send your feedback here.


    Leo Huang

    TechNet Community Support

    Monday, February 13, 2012 5:20 AM
    Moderator
  • This (long!) Powershell one-liner is the closest I've come to get output matching DeviceManager's listing:

    Get-WmiObject -Query "SELECT * FROM Win32_PnPSignedDriver WHERE DeviceClass IS NOT NULL AND DriverProviderName IS NOT NULL" | foreach { $info = [ordered]@{}; $info.DeviceClass = $_.DeviceClass; $info.DeviceName = $(if ($_.FriendlyName) {$_.FriendlyName} else {$_.Description}); $info.DriverProvider = $_.DriverProviderName; $info.DriverDate = $(if ($_.DriverDate) {$_.DriverDate.Substring(0,4)+"-"+$_.DriverDate.Substring(4,2)+"-"+$_.DriverDate.Substring(6,2)} else {""}); $info.DriverVersion = $_.DriverVersion; $(New-Object –TypeName PSObject –Prop $info);} | sort -Property DeviceClass, DeviceName | Format-Table -AutoSize

    This is what the output looks like:

    DeviceClass     DeviceName                                                                DriverProvider               DriverDate DriverVersion
    -----------     ----------                                                                --------------               ---------- -------------
    AUDIOENDPOINT   DELL U2414H (Intel(R) Display Audio)                                      Microsoft                    2013-08-22 6.3.9600.16384
    AUDIOENDPOINT   Microphone (Realtek High Definition Audio)                                Microsoft                    2013-08-22 6.3.9600.16384
    AUDIOENDPOINT   Microphone (USB Advanced Audio Device)                                    Microsoft                    2013-08-22 6.3.9600.16384
    AUDIOENDPOINT   Speakers (Realtek High Definition Audio)                                  Microsoft                    2013-08-22 6.3.9600.16384
    AUDIOENDPOINT   Speakers (USB Advanced Audio Device)                                      Microsoft                    2013-08-22 6.3.9600.16384
    BATTERY         Microsoft AC Adapter                                                      Microsoft                    2006-06-21 6.3.9600.16384
    BATTERY         Microsoft ACPI-Compliant Control Method Battery                           Microsoft                    2006-06-21 6.3.9600.16384
    BIOMETRIC       Validity Sensors (WBF) (PID=0010)                                         Validity Sensors, Inc.       2013-08-27 4.5.232.0
    BLUETOOTH       AV Remote Target Service                                                  Microsoft                    2006-06-21 6.3.9600.17901
    BLUETOOTH       Bose Mini SoundLink                                                       Microsoft                    2006-06-21 6.3.9600.17901
    BLUETOOTH       Intel(R) Wireless Bluetooth(R)                                            Intel Corporation            2015-03-19 17.1.1512.771
    ...

    It will output all recognized devices in DeviceManager plus a few more, but will not list unrecognized devices.


    • Edited by mikewse Tuesday, June 13, 2017 6:50 PM
    Tuesday, June 13, 2017 6:46 PM