检索指向复合名字对象的组件的枚举器的指针。
语法
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 |