The SMS_Driver Windows Management Instrumentation (WMI) class is an SMS Provider server class, in Configuration Manager, that represents device drivers, in the driver catalog, that can be installed as part of a task sequence in an operating system deployment.

The following syntax is simplified from Managed Object Format (MOF) code and includes all inherited properties.

Class SMS_Driver : SMS_ConfigurationItemBaseClass
{
	String ApplicabilityCondition;
	String CategoryInstance_UniqueIDs[];
	UInt32 CI_ID;
	String CI_UniqueID;
	UInt32 CIType_ID;
	UInt32 CIVersion;
	String ContentSourcePath;
	String CreatedBy;
	DateTime DateCreated;
	DateTime DateLastModified;
	Boolean DriverBootCritical;
	String DriverClass;
	DateTime DriverDate;
	String DriverINFFile;
	String DriverProvider;
	Boolean DriverSigned;
	String DriverSigner;
	String DriverType;
	String DriverVersion;
	DateTime EffectiveDate;
	UInt32 EULAAccepted;
	Boolean EULAExists;
	DateTime EULASignoffDate;
	String EULASignoffUser;
	UInt32 ExecutionContext;
	Boolean IsBundle;
	Boolean IsDigest;
	Boolean IsEnabled;
	Boolean IsExpired;
	Boolean IsHidden;
	Boolean IsLatest;
	Boolean IsQuarantined;
	Boolean IsSuperseded;
	Boolean IsUserDefined;
	String LastModifiedBy;
	String LocalizedCategoryInstanceNames[];
	String LocalizedDescription;
	String LocalizedDisplayName;
	SMS_CI_LocalizedEulas LocalizedEulas[];
	SMS_CI_LocalizedProperties LocalizedInformation[];
	String LocalizedInformativeURL;
	UInt32 LocalizedPropertyLocaleID;
	UInt32 ModelID;
	String ModelName;
	UInt32 PermittedUses;
	String PlatformCategoryInstance_UniqueIDs[];
	UInt32 PlatformType;
	SMS_SDMPackageLocalizedData SDMPackageLocalizedData[];
	UInt32 SDMPackageVersion;
	String SDMPackageXML;
	String SecuredScopeNames[];
	String SedoObjectVersion;
	String SourceSite;
};

Methods

The following table shows the methods in SMS_Driver.

Method Description

CreateFromINF Method in Class SMS_Driver

Creates an SMS_Driver object based on information from the specified source path and INF file.

CreateFromOEM Method in Class SMS_Driver

Creates a set of SMS_Driver objects referenced by the specified Txtsetup.oem file.

Properties

ApplicabilityCondition

Data type: StringAccess type: Read/WriteQualifiers: [SizeLimit("512"), not_null]See SMS_ConfigurationItemBaseClass Server WMI Class.
CategoryInstance_UniqueIDs

Data type: String ArrayAccess type: Read/WriteQualifiers: NoneSee SMS_ConfigurationItemBaseClass Server WMI Class.
CI_ID

Data type: UInt32Access type: Read/WriteQualifiers: [key]See SMS_ConfigurationItemBaseClass Server WMI Class.
CI_UniqueID

Data type: StringAccess type: Read/WriteQualifiers:[unique, not_null]See SMS_ConfigurationItemBaseClass Server WMI Class.
CIType_ID

Data type: UInt32Access type: Read-onlyQualifiers: [not_null, read]See SMS_ConfigurationItemBaseClass Server WMI Class.For this class, the type ID is Driver (6).
CIVersion

Data type: UInt32Access type: Read-onlyQualifiers: [read, not_null]See SMS_ConfigurationItemBaseClass Server WMI Class.
ContentSourcePath

Data type: StringAccess type: Read/WriteQualifiers: NoneThe location of the driver files. When a driver is added to a driver package or a boot image the SMS Provider copies files from this location. The path must be a Universal Naming Convention (UNC) path accessible by the SMS Provider, for example, \\smsserver\drivers\microsoft\vmscsi, as the path for INF files.
CreatedBy

Data type: StringAccess type: Read-onlyQualifiers: [SizeLimit("512"), read, not_null]See SMS_ConfigurationItemBaseClass Server WMI Class.
DateCreated

Data type: DateTimeAccess type: Read-onlyQualifiers: [read, not_null]See SMS_ConfigurationItemBaseClass Server WMI Class.
DateLastModified

Data type: DateTimeAccess type: Read-onlyQualifiers: [read]See SMS_ConfigurationItemBaseClass Server WMI Class.
DriverBootCritical

Data type: BooleanAccess type: Read-onlyQualifiers: [read]true if the driver is boot-critical. A mass storage driver imported from a txtsetup.oem file that needs to be installed before booting into a pre-Windows Vista operating system.
DriverClass

Data type: StringAccess type: Read-onlyQualifiers: [read]The class of device that the driver supports (such as Net or Display) as reported by the driver's INF file.
DriverDate

Data type: DateTimeAccess type: Read-onlyQualifiers: [read]Date and time when the driver was written as reported by the INF file.
DriverINFFile

Data type: StringAccess type: Read-onlyQualifiers: [not_null, read]Relative path and file name of the driver INF file, relative to ContentSourcePath.
DriverProvider

Data type: StringAccess type: Read-onlyQualifiers: [read]The name of the company or author of the driver file as reported in the INF file. This property does not necessarily reflect the device manufacturer.
DriverSigned

Data type: BooleanAccess type: Read-onlyQualifiers: [read]true if the driver source file is digitally signed by a recognized authority. For example, the Windows Hardware Quality Lab.
DriverSigner

Data type: StringAccess type: Read-onlyQualifiers: [read]The name of the digital signer if the driver source file is signed.
DriverType

Data type: StringAccess type: Read-onlyQualifiers: [not_null, read]The type of driver. Currently the only valid value for this is INF.
DriverVersion

Data type: StringAccess type: Read-onlyQualifiers: [read]Version number of the driver, as specified by the driver provider.
EffectiveDate

Data type: DateTimeAccess type: Read-onlyQualifiers: [read]See SMS_ConfigurationItemBaseClass Server WMI Class.
EULAAccepted

Data type: UInt32Access type: Read-onlyQualifiers: [read]See SMS_ConfigurationItemBaseClass Server WMI Class.
EULAExists

Data type: BooleanAccess type: Read-onlyQualifiers: [read]See SMS_ConfigurationItemBaseClass Server WMI Class.
EULASignoffDate

Data type: DateTimeAccess type: Read-onlyQualifiers: [read]See SMS_ConfigurationItemBaseClass Server WMI Class.
EULASignoffUser

Data type: StringAccess type: Read-onlyQualifiers: [read]See SMS_ConfigurationItemBaseClass Server WMI Class.
ExecutionContext

Data type: UInt32Access type: Read-onlyQualifiers: [read]See SMS_ConfigurationItemBaseClass Server WMI Class.
IsBundle

Data type: BooleanAccess type: Read/WriteQualifiers: [not_null]See SMS_ConfigurationItemBaseClass Server WMI Class.
IsDigest

Data type: BooleanAccess type: Read-onlyQualifiers: [read, lazy]See SMS_ConfigurationItemBaseClass Server WMI Class.
IsEnabled

Data type: BooleanAccess type: Read/WriteQualifiers: [not_null]See SMS_ConfigurationItemBaseClass Server WMI Class.
IsExpired

Data type: BooleanAccess type: Read/WriteQualifiers: [not_null]See SMS_ConfigurationItemBaseClass Server WMI Class.
IsHidden

Data type: BooleanAccess type: Read/WriteQualifiers: [not_null]See SMS_ConfigurationItemBaseClass Server WMI Class.
IsLatest

Data type: BooleanAccess type: Read-onlyQualifiers: [read]See SMS_ConfigurationItemBaseClass Server WMI Class.
IsQuarantined

Data type: BooleanAccess type: Read-onlyQualifiers: [read]See SMS_ConfigurationItemBaseClass Server WMI Class.
IsSuperseded

Data type: BooleanAccess type: Read-onlyQualifiers: [read, not_null]See SMS_ConfigurationItemBaseClass Server WMI Class.
IsUserDefined

Data type: BooleanAccess type: Read/WriteQualifiers: [not_null]See SMS_ConfigurationItemBaseClass Server WMI Class.
LastModifiedBy

Data type: StringAccess type: Read-onlyQualifiers: [SizeLimit("512"), read, not_null]See SMS_ConfigurationItemBaseClass Server WMI Class.
LocalizedCategoryInstanceNames

Data type: String ArrayAccess type: Read-onlyQualifiers: [read]See SMS_ConfigurationItemBaseClass Server WMI Class.
LocalizedDescription

Data type: StringAccess type: Read-onlyQualifiers: [read]See SMS_ConfigurationItemBaseClass Server WMI Class.
LocalizedDisplayName

Data type: StringAccess type: Read-onlyQualifiers: [read]See SMS_ConfigurationItemBaseClass Server WMI Class.
LocalizedEulas

Data type: SMS_CI_LocalizedEulas ArrayAccess type: Read/WriteQualifiers: [lazy]Not used.
LocalizedInformation

Data type: SMS_CI_LocalizedProperties ArrayAccess type: Read/WriteQualifiers: [lazy]Language-specific localized information about the driver:
  • String DisplayName

  • String Description

  • String InformativeURL

  • UInt32 LocaleID

This property is used to change the display name and description for a driver that supports multiple languages.
LocalizedInformativeURL

Data type: StringAccess type: Read-onlyQualifiers: [read]See SMS_ConfigurationItemBaseClass Server WMI Class.
LocalizedPropertyLocaleID

Data type: UInt32Access type: Read-onlyQualifiers: [read]See SMS_ConfigurationItemBaseClass Server WMI Class.
ModelName

Data type: StringAccess type: Read/WriteQualifiers: [unique, not_null]See SMS_ConfigurationItemBaseClass Server WMI Class.
ModelID

Data type: UInt32Access type: Read/WriteQualifiers: [not_null]See SMS_ConfigurationItemBaseClass Server WMI Class.
PermittedUses

Data type: UInt32Access type: Read/WriteQualifiers: [not_null]See SMS_ConfigurationItemBaseClass Server WMI Class.
PlatformType

Data type: StringAccess type: Read/WriteQualifiers: NoneSee SMS_ConfigurationItemLatestBaseClass Server WMI Class.
PlatformCategoryInstance_UniqueIDs

Data type: String ArrayAccess type: Read/WriteQualifiers: NoneSee SMS_ConfigurationItemLatestBaseClass Server WMI Class.
SDMPackageLocalizedData

Data type: SMS_SDMPackageLocalizedData ArrayAccess type: Read/WriteQualifiers: [lazy]See SMS_ConfigurationItemBaseClass Server WMI Class.
SDMPackageVersion

Data type: UInt32Access type: Read/WriteQualifiers: [not_null]See SMS_ConfigurationItemBaseClass Server WMI Class.
SDMPackageXML

Data type: StringAccess type: Read/WriteQualifiers: [lazy]See SMS_ConfigurationItemBaseClass Server WMI Class.
SecuredScopeNames

Data type: String Array Access type: Read-only Qualifiers: [read]See SMS_PackageBaseclass Server WMI Class.
SedoObjectVersion

Data type: StringAccess type: Read-only Qualifiers: [read]See SMS_PackageBaseclass Server WMI Class.
SourceSite

Data type: StringAccess type: Read/WriteQualifiers: [SizeLimit("3")]See SMS_ConfigurationItemBaseClass Server WMI Class.

Remarks

Class qualifiers for this class include:

  • Secured

For more information about both the class qualifiers and the property qualifiers included in the Properties section, see Configuration Manager Class and Property Qualifiers.

Configuration Manager uses a driver catalog to manage the different computers, devices, and associated Windows device drivers that it supports. For more information, see About the Driver Catalog.

You can create an SMS_Driver object by using the CreateFromINF Method in Class SMS_Driver and CreateFromOEM Method in Class SMS_Driver methods. You use CreateFromINF Method in Class SMS_Driver to create an SMS_Driver Object from a Windows driver INF file. For more information see, How to Import a Windows Driver Described by an INF File into Configuration Manager. You use CreateFromOEM Method in Class SMS_Driver to create an SMS_Driver object from a Txtsetup.oem file.

Drivers share many of the abstract qualities of configuration items but you cannot use drivers like configuration items. For example, they cannot be assigned to baselines.

Drivers can be arranged into categories by adding the relevant category identifier to the SMS_Driver Server WMI ClassCategoryInstance_UniqueIDs array property. For more information, see How to Add a Category to a Windows Driver.

When you use the Configuration Manager server WMI classes in your application or script, remember that each driver must be added to at least one driver package (SMS_DriverPackage Server WMI Class) before it can be installed on a client. For more information, see How to Create a Driver Package for a Windows Driver in Configuration Manager. Mass storage drivers may also be added to a boot image package, represented by SMS_BootImagePackage Server WMI Class. How to add a Windows Driver to a Configuration Manager Boot Image Package.

Requirements

Runtime Requirements

Development Requirements

See Also