Partager via


WNetGetResourceParentA, fonction (winnetwk.h)

La fonction WNetGetResourceParent retourne le parent d’une ressource réseau dans la hiérarchie de navigation réseau. La navigation commence à l’emplacement de la ressource réseau spécifiée.

Appelez les fonctions WNetGetResourceInformation et WNetGetResourceParent pour monter dans la hiérarchie réseau. Appelez la fonction WNetOpenEnum pour descendre dans la hiérarchie.

Syntaxe

DWORD WNetGetResourceParentA(
  [in]      LPNETRESOURCEA lpNetResource,
  [out]     LPVOID         lpBuffer,
  [in, out] LPDWORD        lpcbBuffer
);

Paramètres

[in] lpNetResource

Pointeur vers une structure NETRESOURCE qui spécifie la ressource réseau pour laquelle le nom parent est requis.

Spécifiez les membres de la structure d’entrée NETRESOURCE comme suit. L’appelant connaît généralement les valeurs à fournir pour le lpProvider et les membres dw Type après les appels précédents à WNetGetResourceInformation ou WNetGetResourceParent.

Membre Signification
dwType
Ce membre doit être renseigné s’il est connu ; sinon, elle doit être définie sur NULL .
lpRemoteName
Ce membre doit spécifier le nom distant de la ressource réseau dont le parent est requis.
lpProvider
Ce membre doit spécifier le fournisseur réseau propriétaire de la ressource. Ce membre est requis ; sinon, la fonction peut produire des résultats incorrects.
 

Tous les autres membres de la structure NETRESOURCE sont ignorés.

[out] lpBuffer

Pointeur vers une mémoire tampon pour recevoir une seule structure NETRESOURCE qui représente la ressource parente. La fonction retourne lelpRemoteName , lpProvider, dwType, dwDisplayTypeet dwUsage membres de la structure ; tous les autres membres sont définis sur NULL .

Le lpRemoteName membre pointe vers le nom distant de la ressource parente. Ce nom utilise la même syntaxe que celle retournée à partir d’une énumération par la fonction WNetEnumResource. L’appelant peut effectuer une comparaison de chaînes pour déterminer si la ressource WNetGetResourceParent est la même que celle retournée par WNetEnumResource. Si la ressource d’entrée n’a aucun parent sur l’un des réseaux, le membre lpRemoteName est retourné en tant que NULL.

La présence du bit RESOURCEUSAGE_CONNECTABLE dans le membre dwUsage indique que vous pouvez vous connecter à la ressource parente, mais uniquement lorsqu’elle est disponible sur le réseau.

[in, out] lpcbBuffer

Pointeur vers un emplacement qui, lors de l’entrée, spécifie la taille de la mémoire tampon lpBuffer, en octets. Si la mémoire tampon est trop petite pour contenir le résultat, cet emplacement reçoit la taille de la mémoire tampon requise et la fonction retourne ERROR_MORE_DATA.

Valeur de retour

Si la fonction réussit, la valeur de retour est NO_ERROR.

Si la fonction échoue, la valeur de retour est un code d’erreur système , par exemple l’une des valeurs suivantes.

Retourner le code Description
ERROR_ACCESS_DENIED
L’appelant n’a pas accès à la ressource réseau.
ERROR_BAD_NET_NAME
L’entrée lpRemoteName membre n’est pas une ressource réseau existante pour un réseau.
ERROR_BAD_PROVIDER
L’entrée lpProvider membre ne correspond à aucun fournisseur réseau installé.
ERROR_MORE_DATA
La mémoire tampon pointée par le paramètre lpBuffer est trop petite.
ERROR_NOT_AUTHENTICATED
L’appelant n’a pas les autorisations nécessaires pour obtenir le nom du parent.

Remarques

La fonction WNetGetResourceParent est généralement utilisée conjointement avec la fonction WNetGetResourceInformation pour analyser et interpréter un chemin d’accès réseau tapé par un utilisateur.

Contrairement à la fonction WNetGetResourceInformation, si la ressource inclut un parent dans sa syntaxe, la fonction WNetGetResourceParent retourne le parent, que la ressource existe réellement. WNetGetResourceParent doit généralement être utilisé uniquement par les applications qui affichent des ressources réseau à l’utilisateur de manière hiérarchique. L’Explorateur Windows et la boîte de dialogue Ouvrir le fichier sont deux exemples connus de ce type d’application. Notez qu’aucune hypothèse ne doit être faite sur le type de ressource qui sera retourné.

Vous pouvez appeler le WNetEnumResource, WNetGetResourceInformationou fonction WNetGetResourceParent pour retourner des informations de la structure NETRESOURCE. Vous pouvez également construire des informations sur les ressources réseau à l’aide des membres de la structure NETRESOURCE.

Un exemple d’utilisation inappropriée de WNetGetResourceParent consiste à déterminer le nom du domaine auquel appartient un serveur spécifié. La fonction peut se produire pour renvoyer le nom de domaine approprié pour certains réseaux dans lesquels les domaines apparaissent directement au-dessus des serveurs de la hiérarchie de navigation. La fonction retourne des résultats incorrects pour d’autres réseaux.

Note

L’en-tête winnetwk.h définit WNetGetResourceParent comme alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. Le mélange de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.

Exigences

Exigence Valeur
client minimum pris en charge Windows 2000 Professionnel [applications de bureau uniquement]
serveur minimum pris en charge Windows 2000 Server [applications de bureau uniquement]
plateforme cible Windows
d’en-tête winnetwk.h
bibliothèque Mpr.lib
DLL Mpr.dll

Voir aussi

WNetGetNetworkInformation

WNetGetProviderName

WNetGetResourceInformation

WNetGetUniversalName

Vue d’ensemble mise en réseau Windows (WNet)

fonctions de mise en réseau Windows