NPGetResourceParent 函数 (npapi.h)

检索浏览层次结构中指定网络资源的父级。 此函数通常是针对以前调用 NPEnumResourceNPGetResourceInformation 时由同一提供程序返回的资源调用的。

语法

DWORD NPGetResourceParent(
  [in]      LPNETRESOURCEW lpNetResource,
  [out]     LPVOID         lpBuffer,
  [in, out] LPDWORD        lpBufferSize
);

参数

[in] lpNetResource

指向需要其父名称的网络资源的指针。 NETRESOURCE 可能是从上一次调用 NPEnumResourceNPGetResourceInformation 获取的,也可以是由调用方构造的。

lpRemoteName 字段指定需要其父级的网络资源的远程名称。

lpProvider 字段指定要调用的提供程序。 必须提供此项。

如果调用程序知道其值,则会填充 dwType 字段。 否则,它设置为 NULL

NETRESOURCE 中的所有其他字段将被忽略且不会初始化。

[out] lpBuffer

指向用于接收结果的缓冲区的指针,该缓冲区是表示父资源的单个 NETRESOURCE 结构。 返回 lpRemoteNamelpProviderdwTypedwDisplayTypedwUsage 字段;所有其他字段都设置为 NULL

输出 lpRemoteName 的格式应与 NPEnumResource 从枚举返回的格式相同,以便调用方可以执行区分大小写的字符串比较,以确定父资源是否与 NPEnumResource 返回的资源相同。 如果输入资源在语法上具有父资源,则提供程序可以返回它,而无需确定输入资源或其父资源是否确实存在。 如果某个资源在网络上没有浏览父级,则 lpRemoteName 返回为 NULL

返回的 dwUsage 字段中的RESOURCEUSAGE_CONNECTABLE位不一定指示资源当前可以连接到,仅表明资源在网络上可用时可连接。

[in, out] lpBufferSize

指向指定 lpBuffer 参数指向的缓冲区的大小(以字节为单位)的位置的指针。 如果缓冲区对于结果来说太小,该函数会将所需的缓冲区大小置于此位置,并返回错误WN_MORE_DATA。

返回值

如果该函数成功,它应返回WN_SUCCESS。 否则,它应返回错误代码,可能是以下代码之一。

返回代码 说明
WN_MORE_DATA
输入缓冲区太小。
WN_BAD_NETNAME
此提供程序不拥有 lpNetResource (指定的资源,或者该资源在语法上) 无效。
WN_BAD_VALUE
dwUsagedwType 无效,或者指定的参数组合不正确, (例如,lpRemoteName 在语法上对 dwType) 无效。
WN_NOT_AUTHENTICATED
调用方尚未在网络中进行身份验证。
WN_ACCESS_DENIED
调用方已通过网络身份验证,但没有足够的权限。

要求

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