How to Enable or Disable a Windows Driver in Configuration Manager
You enable or disable a Windows driver in the operating system deployment driver catalog, in Configuration Manager, by setting the IsEnabled
property of the SMS_Driver Server WMI Class object. A driver can be disabled to prevent it from being installed by the Auto Apply Driver action in a task sequence.
To enable or disable a Windows driver
Set up a connection to the SMS Provider. For more information, see SMS Provider fundamentals.
Get the
SMS_Driver
object for the driver you want to enable or disable.Set the
IsEnabled
property totrue
to enable the driver, or tofalse
to disable the driver.Commit the
SMS_Driver
object changes.
Example
The following example method enables or disables a driver depending on the value of the enableDriver
parameter.
For information about calling the sample code, see Calling Configuration Manager Code Snippets.
Sub EnableDriver(connection,driverID,vEnableDriver)
' Get the driver.
Set driver = connection.Get("SMS_Driver.CI_ID=" & driverID)
' Set the flag.
driver.IsEnabled=vEnableDriver
' Commit changes.
driver.Put_
End Sub
public void EnableDriver(
WqlConnectionManager connection,
int driverID,
bool enableDriver)
{
try
{
// Get the driver.
IResultObject driver = connection.GetInstance("SMS_Driver.CI_ID=" + driverID);
// Set the flag.
driver["IsEnabled"].BooleanValue = enableDriver;
// Commit the changes.
driver.Put();
}
catch (SmsException e)
{
Console.WriteLine("Failed: " + e.Message);
throw;
}
}
The example method has the following parameters:
Parameter | Type | Description |
---|---|---|
connection |
- Managed: WqlConnectionManager - VBScript: SWbemServices |
A valid connection to the SMS Provider. |
driverID |
- Managed: Integer - VBScript: Integer |
The Windows driver identifier available in SMS_Driver.CI_ID . |
enableDriver |
- Managed: String - VBScript: String |
Flag to enable or disable the driver.true - The driver is enabled.false - The driver is disabled. |
Compiling the Code
This C# example requires:
Namespaces
System
System.Collections.Generic
System.Text
Microsoft.ConfigurationManagement.ManagementProvider
Microsoft.ConfigurationManagement.ManagementProvider.WqlQueryEngine
Assembly
microsoft.configurationmanagement.managementprovider
adminui.wqlqueryengine
Robust Programming
For more information about error handling, see About Configuration Manager Errors.
.NET Framework Security
For more information about securing Configuration Manager applications, see Configuration Manager role-based administration.