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 qui ont été retournées par le même fournisseur à partir d’appels antérieurs à 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 peut avoir été 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. Il doit être fourni.

Le champ dwType est renseigné si le programme appelant connaît sa valeur. Sinon, elle est définie sur 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 seule structure NETRESOURCE représentant la ressource parente. Les champs lpRemoteName, lpProvider, dwType, dwDisplayType et dwUsage sont retournés ; tous les autres champs ont la valeur NULL.

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

Le bit RESOURCEUSAGE_CONNECTABLE dans le champ dwUsage retourné n’indique pas nécessairement que la ressource peut actuellement être connectée, mais seulement 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 suivants.

Code de retour Description
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 syntaxiquement non valide).
WN_BAD_VALUE
DwUsage ou dwType n’est pas valide, ou il existe une combinaison incorrecte de paramètres spécifiée (par exemple, lpRemoteName n’est pas syntaxiquement valide pour dwType).
WN_NOT_AUTHENTICATED
L’appelant n’a pas été authentifié auprès du réseau.
WN_ACCESS_DENIED
L’appelant a été authentifié sur le réseau, mais ne dispose pas des autorisations suffisantes.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows XP [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2003 [applications de bureau uniquement]
Plateforme cible Windows
En-tête npapi.h