IPropertySheetProvider::CreatePropertySheet 方法 (mmc.h)
IPropertySheetProvider::CreatePropertySheet 方法创建属性表框架。
语法
HRESULT CreatePropertySheet(
[in] LPCWSTR title,
[in] boolean type,
[in] MMC_COOKIE cookie,
[in] LPDATAOBJECT pIDataObjectm,
[in] DWORD dwOptions
);
parameters
[in] title
指向以 null 结尾的字符串的指针,该字符串包含属性页的标题。 此参数不能为 NULL。
[in] type
TRUE 创建属性表, FALSE 创建向导。
[in] cookie
当前所选项的 Cookie 值。 当扩展管理单元调用 CreatePropertySheet 时,这可以是 NULL 。
[in] pIDataObjectm
指向 Cookie 的数据对象上的 IDataObject 接口的指针。 如果此参数的值为 NULL,MMC 将不会调用扩展管理单元实现的任何 IExtendPropertySheet2 方法。
[in] dwOptions
一个 值,该值指定可由方法调用设置的标志。 参数可以是以下值的组合:
MMC_PSO_NOAPPLYNOW
“删除立即应用”按钮。
MMC_PSO_HASHELP
添加 “帮助 ”按钮。
MMC_PSO_NO_PROPTITLE
对于向导忽略。 对于属性表,如果指定了此选项,则不会在属性表标题栏的开头插入“属性”一词。
MMC_PSO_NEWWIZARDTYPE
使用向导 97 样式。
例如,若要创建具有 “帮助 ”按钮且没有“立即应用”按钮的属性表,dwOptions 参数应为 MMC_PSO_NOAPPLYNOW | MMC_PSO_HASHELP
。
返回值
此方法可以返回其中一个值。
注解
此方法创建一个 对象,该对象收集创建属性表所需的所有信息。 如果 CreatePropertySheet 调用成功,但发生后续错误,则必须调用 IPropertySheetProvider::Show ( –1, 0) 释放对象。 在这种情况下,可以忽略返回代码。
在管理单元在调用 IPropertySheetProvider::CreatePropertySheet 中创建属性表,然后根据需要调用 IPropertySheetProvider::AddPrimaryPages 和 IPropertySheetProvider::AddExtensionPages, 然后决定不显示属性表,它应调用 IPropertySheetProvider::Show ( –1, 0) 删除属性表并释放其资源。 在这种情况下,管理单元必须删除它创建的属性页句柄。 这可以在管理单元调用 IPropertySheetProvider::Show ( –1, 0) 之前或之后完成,因为 MMC 不使用属性页句柄。
对于面向 MMC 1.1 的管理单元,管理单元必须在 IPropertySheetProvider::CreatePropertySheet 调用中对它传递给 MMC 的 IDataObject 接口保留额外的引用。 此引用必须从 IPropertySheetProvider::CreatePropertySheet 调用之前保留,直到属性表可能通过调用 IPropertySheetProvider::Show ( –1, 0) 关闭。
要求
最低受支持的客户端 | Windows Vista |
最低受支持的服务器 | Windows Server 2008 |
目标平台 | Windows |
标头 | mmc.h |
DLL | Mmcndmgr.dll |