IPortableDeviceClassExtension interface (portabledeviceclassextension.h)

Used by the device driver to support customized initialization, to enable a WPD interface globally unique identifier (GUID), or to ensure the correct application compatibility settings for a given device.

To get this interface, call CoCreateInstance and pass in a class identifier (CLSID) of CLSID_PortableDeviceClassExtension and an instance identifier (IID) of IID_IPortableDeviceClassExtension.

Inheritance

The IPortableDeviceClassExtension interface inherits from the IUnknown interface. IPortableDeviceClassExtension also has these types of members:

Methods

The IPortableDeviceClassExtension interface has these methods.

 
IPortableDeviceClassExtension::Initialize

The Initialize interface initializes a portable device by registering the device, device service, and private interfaces.
IPortableDeviceClassExtension::ProcessLibraryMessage

The ProcessLibraryMessage interface processes class library-specific messages and commands.
IPortableDeviceClassExtension::Uninitialize

The Uninitialize interface disables the WPD interface, any private interfaces, and device service interfaces that were initialized by the given driver. This method also disables the WIA or WMDM compatibility layers if they are enabled.

Requirements

Requirement Value
Target Platform Windows
Header portabledeviceclassextension.h

See also

Driver Interfaces