PowerTip: Use PowerShell to Identify Network Drivers in Configuration Manager


Summary: Use the Configuration Manager cmdlets in Windows PowerShell to identify all network drivers.

Hey, Scripting Guy! Question I deal with drivers detection issues in Windows PE because we have too many network card drivers.
           How can I use Windows PowerShell to quickly show all of the network drivers in Configuration Manager?

Hey, Scripting Guy! Answer Use the Get-CmDriver cmdlet and filter on the DriverClass property, for example:

$DriverClass=’Net’

Get-CmDriver | Where { $_.DriverClass –match $DriverClass }

You can pipe this object to Select-Object to choose the information most relevant to you.

Comments (3)

  1. Marcus says:

    Hi, your blog is very interesting, I read a lot of nice things. Unfortnatly often i could not use it because lack of support in Desktop Version of PS 🙁 Is there a way to get this CMD let on and Windows Embedded with PS4 ?

  2. Sean Kearney - Energized Tech says:

    @Marcus

    This Cmdlet requires the back end of the Configuration Manager 2012 Console and higher. I don’t know personally if that can install on your version of Windows Embedded. PowerShell 4 would certainly support it. Your other other option could be an Interactive
    session using PowerShell Remoting. (Just thinking of an idea, haven’t tried this yet)

    $Session=New-PSsession -computername ‘ConfigManServername’ -credential (Get-Credential)
    Enter-Pssession $Session
    Import-Module -module ConfigurationManager

    This would allow you to use the Cmdlets on the Remote Configuration Manager server directly from Windows Embedded. Or you could try going the next level of using Implicit Remoting and producing a local module to make it feel like you’re running them locally.

    $Session=New-PSsession -computername ‘ConfigManServername’ -credential (Get-Credential)
    Enter-Pssession $Session
    Import-Module -module ConfigurationManager
    exit
    Export-Pssession $Session -module ConfigurationManager -modulename C:FooConfigMan
    Disconnect-Pssession $Session

    Then if you needed to use them you could just run

    Import-Module C:fooConfigman

    Cheers!
    Sean
    Honorary Scripting Guy – Cloud and Datacenter Management MVP

  3. Marcus says:

    Hi Sean,
    many thanks for your explanation.

    I will try that.

    Regards
    Marcus

Skip to main content