NPEnumResource 函数 (npapi.h)

根据 NPOpenEnum 返回的句柄执行枚举。

语法

DWORD NPEnumResource(
  [in]      HANDLE  hEnum,
  [in, out] LPDWORD lpcCount,
  [out]     LPVOID  lpBuffer,
  [in, out] LPDWORD lpBufferSize
);

参数

[in] hEnum

NPOpenEnum 调用获取的句柄。

[in, out] lpcCount

指向请求的条目数的指针。 请求尽可能多的条目可能是0xFFFFFFFF。 如果调用成功,此位置将收到实际读取的条目数。

[out] lpBuffer

指向用于接收枚举结果的缓冲区的指针,该结果作为 NETRESOURCE 条目数组返回。 缓冲区在下次使用 hEnum 调用之前有效。

[in, out] lpBufferSize

指向传入时传递给函数调用的缓冲区的大小(以字节为单位)的指针。 如果缓冲区太小,即使一个条目也太小,则退出时应包含读取一个条目所需的字节数。 仅当返回代码WN_MORE_DATA时,才会设置此值。

返回值

如果该函数成功,它应返回WN_SUCCESS。 调用方可以继续调用 NPEnumResource 以继续枚举。 否则,它应返回以下错误代码之一。

返回代码 说明
WN_NO_MORE_ENTRIES
不再有条目。 枚举已成功完成。 发生这种情况时,返回缓冲区 的内容 lpBuffer 是不确定的。
WN_MORE_DATA
缓冲区太小,甚至无法容纳单个条目。
WN_BAD_HANDLE
hEnum 不是有效的句柄。
WN_NO_NETWORK
网络不存在。 在测试 hEnum 的有效性之前,将检查此条件。

注解

调用此函数时,提供程序应使用请求的条目数 (或可以容纳) 的最大条目数填充缓冲区。 返回的 NETRESOURCE 结构应位于缓冲区的头部,就像此类结构的数组一样。 这些结构中的指针必须指向缓冲区内的位置。 因此,这些指针引用的数据应位于缓冲区末尾,位于结构数组之后。 提供商负责正确打包此信息。

要求

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