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


Метод IWizardExtension::AddPages (shobjidl.h)

Добавляет страницы расширений в мастер, заполняя массив дескрипторами для структур PROPSHEETPAGE , представляющих эти страницы.

Синтаксис

HRESULT AddPages(
  [out] HPROPSHEETPAGE *aPages,
  [in]  UINT           cPages,
  [out] UINT           *pnPagesAdded
);

Параметры

[out] aPages

Тип: HPROPSHEETPAGE*

Указатель на массив дескрипторов PROPSHEETPAGE , представляющих страницы диалоговых окон мастера. В этот массив добавляются дескрипторы структур PROPSHEETPAGE для страниц расширений.

[in] cPages

Тип: UINT

Количество элементов в aPages.

[out] pnPagesAdded

Тип: UINT*

Число успешно добавленных дескрипторов.

Возвращаемое значение

Тип: HRESULT

Если этот метод завершается успешно, он возвращает S_OK. В противном случае возвращается код ошибки HRESULT .

Комментарии

Массив дескрипторов, на которые указывает aPages , может содержать дескрипторы для страниц диалоговых окон мастера, предшествующих и следующих за страницами расширений. Указатель массива должен быть передан этому методу, чтобы его значение было первым пустым элементом массива, готовым принять дескриптор первой страницы расширения, а не просто первого элемента. Сопутствующее значение, передаваемое в cPages , должно содержать количество неиспользуемых элементов массива, а не общее число.

Например, если в массив с именем hpages были добавлены две начальные страницы, вызов IWizardExtension::AddPages будет выглядеть следующим образом.

#define ARRAYSIZE(a)    (sizeof(a)/sizeof(a[0]))
g_iwe->AddPages(&hpages[2], ARRAYSIZE(hpages)-2, &nPages);

Не путайте страницы мастера, которые являются структурами PROPSHEETPAGE , с размещенными HTML-страницами. На одной странице диалогового окна мастера может размещаться множество последовательных HTML-страниц. Этот метод предоставляет количество страниц диалогового окна мастера, добавленных расширением мастера, а не количество отображаемых в нем HTML-страниц на стороне сервера.

Требования

   
Минимальная версия клиента Windows XP [только классические приложения]
Минимальная версия сервера Windows Server 2003 [только классические приложения]
Целевая платформа Windows
Header shobjidl.h
DLL Shell32.dll