Partager via


NPGetResourceParent, fonction (npapi.h)

Récupère le parent d’une ressource réseau spécifiée dans la hiérarchie de navigation. Cette fonction est généralement appelée pour les ressources retournées par le même fournisseur à partir des appels précédents à NPEnumResource ou NPGetResourceInformation.

Syntaxe

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

Paramètres

[in] lpNetResource

Pointeur vers la ressource réseau dont le nom parent est requis. Le NETRESOURCE aurait pu être obtenu à partir d’un appel précédent à NPEnumResource ou NPGetResourceInformation, ou construit par l’appelant.

Le champ lpRemoteName spécifie le nom distant de la ressource réseau dont le parent est requis.

Le champ lpProvider spécifie le fournisseur à appeler. Cela doit être fourni.

Le champ dwType est renseigné si le programme appelant connaît sa valeur. Sinon, elle a la valeur NULL.

Tous les autres champs de NETRESOURCE sont ignorés et ne sont pas initialisés.

[out] lpBuffer

Pointeur vers une mémoire tampon pour recevoir le résultat, qui est une structure NETRESOURCE unique représentant la ressource parente. Les champs lpRemoteName, lpProvider, dwType, dwDisplayType et dwUsage sont retournés ; tous les autres champs sont définis sur NULL.

Le lpRemoteName de sortie doit être au même format que celui retourné à partir d’une énumération par NPEnumResource, afin que l’appelant puisse effectuer une comparaison de chaînes sensibles à la casse pour déterminer si la ressource parente est identique à celle retournée par NPEnumResource. Si la ressource d’entrée a un parent, le fournisseur peut le retourner, sans déterminer si la ressource d’entrée ou son parent existe réellement. Si une ressource n’a pas de parent de navigation sur le réseau, lpRemoteName est retourné comme NULL.

Le bit RESOURCEUSAGE_CONNECTABLE dans le champ dwUsage retourné n’indique pas nécessairement que la ressource peut actuellement être connectée, mais uniquement que la ressource est connectable lorsqu’elle est disponible sur le réseau.

[in, out] lpBufferSize

Pointeur vers un emplacement qui spécifie la taille, en octets, de la mémoire tampon pointée par le paramètre lpBuffer . Si la mémoire tampon est trop petite pour le résultat, la fonction place la taille de mémoire tampon requise à cet emplacement et retourne l’erreur WN_MORE_DATA.

Valeur retournée

Si la fonction réussit, elle doit retourner WN_SUCCESS. Sinon, il doit retourner un code d’erreur, qui peut être l’un des éléments suivants.

Code de retour Descriptif
WN_MORE_DATA
La mémoire tampon d’entrée est trop petite.
WN_BAD_NETNAME
Ce fournisseur ne possède pas la ressource spécifiée par lpNetResource (ou la ressource n’est pas valide de manière syntactique).
WN_BAD_VALUE
DwUsage ou dwType n’est pas valide, ou il existe une combinaison incorrecte de paramètres spécifiés (par exemple, lpRemoteName n’est pas valide de manière syntactique pour dwType).
WN_NOT_AUTHENTICATED
L’appelant n’a pas été authentifié sur le réseau.
WN_ACCESS_DENIED
L’appelant a été authentifié sur le réseau, mais n’a pas suffisamment d’autorisations.

Spécifications

Requirement Valeur
Client minimum requis Windows XP [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2003 [applications de bureau uniquement]
plateforme cible Fenêtres
Header npapi.h
Library davclnt.lib