Important:
This is retired content. This content is outdated and is no longer being maintained. It is provided as a courtesy for individuals who are still using these technologies. This content may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist.
A version of this page is also available for
4/8/2010

Fills a counted array of GUID values where each GUID specifies the CLSID of each property page that can be displayed in the property sheet for this object.

Syntax

HRESULT GetPages( 
  CAUUID 
*pPages  //Pointer to structure
);

Parameters

pPages

[out] Pointer to a caller-allocated CAUUIDstructure that must be initialized and filled before returning. The pElemsfield in the CAUUIDstructure is allocated by the callee with CoTaskMemAllocand freed by the caller with CoTaskMemFree.

Return Value

The following table shows the return values.

Value Description

E_OUTOFMEMORY

Out of memory error.

E_POINTER

The address in pPages is not valid. For example, it may be NULL.

E_UNEXPECTED

Unexpected Error.

S_OK

The array was filled successfully.

Remarks

The CAUUIDstructure is caller-allocated, but is not initialized by the caller. The ISpecifyPropertyPages::GetPagesmethod fills the cElements field in the CAUUID structure. This method also allocates memory for the array pointed to by the pElems field in CAUUIDusing CoTaskMemAlloc. Then, it fills the newly allocated array. After this method returns successfully, the structure contains a counted array of UUIDs, each UUID specifying a property page CLSID.

Notes to Callers

The caller must release the memory pointed to by the pElemsfield of CAUUID, using CoTaskMemFreewhen it is no longer needed.

Notes to Implementers

E_NOTIMPL is not allowed as a return value since an object with no property pages should not expose the ISpecifyPropertyPagesinterface at all.

Requirements

Header ocidl.h
Windows Embedded CE Windows CE .NET 4.0 and later
Windows Mobile Windows Mobile Version 5.0 and later