Partager via


IWizardExtension::AddPages, méthode (shobjidl.h)

Ajoute des pages d’extension à l’Assistant en remplissant un tableau avec des descripteurs aux structures PROPSHEETPAGE représentant ces pages.

Syntaxe

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

Paramètres

[out] aPages

Type : HPROPSHEETPAGE*

Pointeur vers un tableau de handles PROPSHEETPAGE qui représentent les pages de boîte de dialogue de l’Assistant. Des descripteurs aux structures PROPSHEETPAGE pour les pages d’extension sont ajoutés à ce tableau.

[in] cPages

Type : UINT

Nombre d’éléments dans aPages.

[out] pnPagesAdded

Type : UINT*

Nombre de handles correctement ajoutés.

Valeur retournée

Type : HRESULT

Si cette méthode réussit, elle retourne S_OK. Sinon, elle retourne un code d’erreur HRESULT.

Remarques

Le tableau de handles pointé par aPages peut contenir des handles vers les pages de boîte de dialogue de l’Assistant qui précèdent et suivent les pages d’extension. Le pointeur du tableau doit être passé à cette méthode afin que sa valeur soit le premier élément de tableau vide, prêt à accepter le handle de la première page d’extension, plutôt que simplement le premier élément. De manière collatérale, la valeur passée dans cPages doit indiquer le nombre d’éléments de tableau inutilisés au lieu du nombre total.

Par exemple, si deux pages hôtes d’introduction ont été ajoutées à un tableau appelé hpages, l’appel à IWizardExtension::AddPages s’affiche comme suit.

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

Ne confondez pas les pages de l’Assistant, qui sont des structures PROPSHEETPAGE , avec les pages HTML hébergées. Une page de boîte de dialogue de l’Assistant peut héberger de nombreuses pages HTML séquentielles. Cette méthode indique le nombre de pages de boîte de dialogue de l’Assistant ajoutées par l’extension de l’Assistant, et non le nombre de pages HTML côté serveur qui y sont affichées.

Configuration requise

   
Client minimal pris en charge Windows XP [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2003 [applications de bureau uniquement]
Plateforme cible Windows
En-tête shobjidl.h
DLL Shell32.dll