ISpecifyPropertyPages::GetPages (Compact 2013)

3/26/2014

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 CAUUID structure that must be initialized and filled before returning. The pElems field in the CAUUID structure is allocated by the callee with CoTaskMemAlloc and 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 CAUUID structure is caller-allocated, but is not initialized by the caller. The ISpecifyPropertyPages::GetPages method fills the cElements field in the CAUUID structure. This method also allocates memory for the array pointed to by the pElems field in CAUUID using 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 pElems field of CAUUID, using CoTaskMemFree when 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 ISpecifyPropertyPages interface at all.

Requirements

Header

ocidl.h

See Also

Reference

ISpecifyPropertyPages