A custom property page provider adds new property pages or replaces default property pages for a specific device or class. A provider can be a separate DLL or it can be combined with the class installer or the control panel applet for the device. If combined with the installer, the provider must be distinct from any properties handling provided by the ClassInstall function of the installer.
Every property page provider exports the property page enumeration function, usually named EnumPropPages. The Device Manager dynamicly links and calls this function just before displaying the default property sheet to give the provider a chance to add pages or replace the default pages.
A provider must export dialog procedures to support the property pages it adds to the default property sheet. The dialog procedures process initialize values and process user input for the property pages when the Device Manager displays the property sheet. The Device Manager uses the PropertySheet function to display the properties sheet, so the dialog procedures for the individual pages must be prepared to process the messages and notifications associated with this function.