iMoniker::Enum 方法 (objidl.h)

检索指向复合名字对象的组件的枚举器的指针。

语法

HRESULT Enum(
  [in]  BOOL         fForward,
  [out] IEnumMoniker **ppenumMoniker
);

参数

[in] fForward

如果 为 TRUE,则从左到右枚举名字对象。 如果 为 FALSE,则从右到左枚举。

[out] ppenumMoniker

指向 IEnumMoniker 指针变量的指针,该变量接收指向名字对象的枚举器对象的接口指针。 成功后,实现必须在枚举器对象上调用 AddRef 。 调用 发布由调用方负责。 如果发生错误或名字对象没有可枚举组件,则实现会将 *ppenumMoniker 设置为 NULL

返回值

此方法可以返回E_OUTOFMEMORY、E_UNEXPECTED和S_OK的标准返回值。

注解

此方法必须提供指向可枚举名字对象的组件的枚举器的 IEnumMoniker 指针。 例如,泛型复合名字对象的 IMoniker::Enum 方法的实现将创建一个枚举器,该枚举器可以确定构成复合对象的单个名字对象,而文件名字对象的 IMoniker::Enum 方法创建一个枚举器,该枚举器返回表示路径中每个组件的名字对象。

调用方备注

调用此方法可检查构成复合名字对象的组件。

实施者说明

如果新的名字对象类没有明显的内部结构,则此方法的实现只需返回S_OK并将 ppenumMoniker 设置为 NULL

特定于实现的说明

实现 备注
反名字对象 此方法返回S_OK并将 ppenumMoniker 设置为 NULL
类名字对象 此方法返回S_OK并将 ppenumMoniker 设置为 NULL
文件名字对象 此方法返回S_OK并将 ppenumMoniker 设置为 NULL
泛型复合名字对象 如果成功,此方法返回S_OK并传回枚举器,该枚举器枚举构成复合的组件名字对象;否则,该方法返回E_OUTOFMEMORY。
项名字对象 此方法返回S_OK并将 ppenumMoniker 设置为 NULL
OBJREF 名字对象 此方法返回S_OK并将 ppenumMoniker 设置为 NULL
指针名字对象 此方法返回E_NOTIMPL。
URL 名字对象 此方法返回S_OK并将 ppenumMoniker 设置为 NULL

要求

要求
最低受支持的客户端 Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器 Windows 2000 Server [仅限桌面应用]
目标平台 Windows
标头 objidl.h

另请参阅

IEnumMoniker

IMoniker