Поделиться через


Метод IPropertySheetProvider::CreatePropertySheet (mmc.h)

Метод IPropertySheetProvider::CreatePropertySheet создает рамку листа свойств.

Синтаксис

HRESULT CreatePropertySheet(
  [in] LPCWSTR      title,
  [in] boolean      type,
  [in] MMC_COOKIE   cookie,
  [in] LPDATAOBJECT pIDataObjectm,
  [in] DWORD        dwOptions
);

Параметры

[in] title

Указатель на строку, завершающуюся null, которая содержит заголовок страницы свойств. Этот параметр не может иметь значение NULL.

[in] type

True создает страницу свойств, а false — мастер.

[in] cookie

Значение файла cookie выбранного элемента. Это значение может иметь значение NULL , если createPropertySheet вызывается оснасткой расширения.

[in] pIDataObjectm

Указатель на интерфейс IDataObject в объекте данных для файла cookie. Если этот параметр имеет значение 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, оснастка должна хранить дополнительную ссылку на интерфейс IDataObject, которую она передает в MMC в вызове IPropertySheetProvider::CreatePropertySheet . Эта ссылка должна храниться до вызова IPropertySheetProvider::CreatePropertySheet , пока страница свойств не будет закрыта с помощью вызова IPropertySheetProvider::Show( –1, 0).

Требования

   
Минимальная версия клиента Windows Vista
Минимальная версия сервера Windows Server 2008
Целевая платформа Windows
Header mmc.h
DLL Mmcndmgr.dll

См. также раздел

Idataobject

IPropertySheetProvider

IPropertySheetProvider::Show