IConnectionPointContainer::EnumConnectionPoints  2MKT4K_

Creates an enumerator object to iterate through all the connection points supported in the connectable object, one connection point per outgoing IID.

HRESULT EnumConnectionPoints(

    IEnumConnectionPoints **ppEnum

//Indirect pointer to the newly created enumerator

   );

 

 

Parameters

ppEnum

[out] Indirect pointer to the IEnumConnectionPoints2MCWRR5 interface on the newly created enumerator.

 

Return Values

This method supports the standard return values E_OUTOFMEMORY and E_UNEXPECTED, as well as the following:

S_OK

The enumerator was successfully created.

E_POINTER

The value in ppEnum is not valid. For example, it may be NULL.

 

Remarks

Since IEnumConnectionPoints enumerates pointers to IConnectionPoint, the caller must use IConnectionPoint::GetConnectionInterface to determine the interface identifer of the outgoing interface that the connection point supports.

Notes to Callers

The caller is responsible for releasing the enumerator by calling (*ppEnum)->Release when it is no longer needed.

Notes to Implementers

Returning E_NOTIMPL is specifically disallowed because, with the exception of type information, there would be no other means through which a caller could find the IIDs of the outgoing interfaces. Since a connectable object typically has a fixed set of known outgoing interfaces, it is straightforward to implement the enumerator on top of a fixed length array of IIDs known at compile time.

See Also

IEnumConnectionPoints