IExtendPropertySheet

[This is preliminary documentation and subject to change.]

The IExtendPropertySheet interface enables a snap-in component to add pages to the property sheet of an item.

When to Implement

You implement this interface in your in-process server DLL to add property pages for a snap-in component. QueryInterface is called on the primary snap-in object and the console then calls IExtendPropertySheet::QueryPagesFor. If the snap-in responds with S_OK, the console calls IExtendPropertySheet::CreatePropertyPages which gives the snap-in an opportunity to add its pages. Finally, the console creates the sheet to display the pages. If the snap-in returns S_FALSE, no property sheet is created for the object.

Note that each property sheet is created in its own thread. If any COM interface pointer is passed from the IComponent to the property page, this pointer must be marshaled. For more information, see Processes and Threads in the Microsoft Platform SDK and the Apartment Model discussion in the COM specification. The size of the property page is determined by the primary snap-in. If you are extending a property sheet for an object that does not belong to your snap-in, the dialog templates you use should conform to the dimensions established by the primary snap-in.

When to Use

This interface can be used to add information about the properties of an object whenever you consider it appropriate. It may also be useful to know that property pages can also be implemented using either the Win32 API or a class library such as the Microsoft Foundation Class Library.

Methods in Vtable Order

IUnknown Methods Description
QueryInterface Returns pointers to supported interfaces.
AddRef Increments reference count.
Release Decrements reference count.

IExtendPropertySheet Methods Description
CreatePropertyPages Adds pages to a property sheet.
QueryPagesFor Determines whether object needs pages.