Share via


WNetEnumResourceA, fonction (winnetwk.h)

La fonction WNetEnumResource poursuit une énumération des ressources réseau qui a été démarrée par un appel à la fonction WNetOpenEnum .

Syntaxe

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

Paramètres

[in] hEnum

Handle qui identifie une énumération instance. Ce handle doit être retourné par la fonction WNetOpenEnum .

[in, out] lpcCount

Pointeur vers une variable spécifiant le nombre d’entrées demandées. Si le nombre demandé est -1, la fonction retourne autant d’entrées que possible.

Si la fonction réussit, lors du retour, la variable pointée par ce paramètre contient le nombre d’entrées effectivement lues.

[out] lpBuffer

Pointeur vers la mémoire tampon qui reçoit les résultats de l’énumération. Les résultats sont retournés sous la forme d’un tableau de structures NETRESOURCE . Notez que la mémoire tampon que vous allouez doit être suffisamment grande pour contenir les structures, ainsi que les chaînes vers lesquelles leurs membres pointent. Pour plus d'informations, consultez la section Notes qui suit.

La mémoire tampon est valide jusqu’à l’appel suivant à l’aide du handle spécifié par le paramètre hEnum . L’ordre des structures NETRESOURCE dans le tableau n’est pas prévisible.

[in, out] lpBufferSize

Pointeur vers une variable qui spécifie la taille du paramètre lpBuffer , en octets. Si la mémoire tampon est trop petite pour recevoir une seule entrée, ce paramètre reçoit la taille requise de la mémoire tampon.

Valeur retournée

Si la fonction réussit, la valeur de retour est l’une des valeurs suivantes.

Code de retour Description
NO_ERROR
L’énumération a réussi et la mémoire tampon contient les données demandées. L’application appelante peut continuer à appeler WNetEnumResource pour terminer l’énumération.
ERROR_NO_MORE_ITEMS
Il n’y a plus d’entrées. Le contenu de la mémoire tampon n’est pas défini.
 

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

Code de retour Description
ERROR_MORE_DATA
D’autres entrées sont disponibles avec les appels suivants. Pour plus d'informations, consultez la section Notes qui suit.
ERROR_INVALID_HANDLE
Le handle spécifié par le paramètre hEnum n’est pas valide.
ERROR_NO_NETWORK
Le réseau n'est pas disponible. (Cette condition est testée avant que la validité de hEnum soit testée.)
ERROR_EXTENDED_ERROR
Une erreur spécifique au réseau s’est produite. Pour obtenir une description de l’erreur, appelez la fonction WNetGetLastError .

Remarques

La fonction WNetEnumResource n’énumère pas les utilisateurs connectés à un partage ; vous pouvez appeler la fonction NetConnectionEnum pour accomplir cette tâche. Pour énumérer les partages masqués, appelez la fonction NetShareEnum .

Une application ne peut pas définir le paramètre lpBuffer sur NULL et récupérer la taille de mémoire tampon requise à partir du paramètre lpBufferSize . Au lieu de cela, l’application doit allouer une mémoire tampon d’une taille raisonnable (16 kilo-octets en général) et utiliser la valeur de lpBufferSize pour la détection des erreurs.

Exemples

Pour obtenir un exemple de code illustrant une fonction définie par l’application qui énumère toutes les ressources d’un réseau, consultez Énumération des ressources réseau.

Notes

L’en-tête winnetwk.h définit WNetEnumResource en tant qu’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. La combinaison 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.

Configuration requise

   
Client minimal pris en charge Windows 2000 Professionnel [applications de bureau uniquement]
Serveur minimal pris en charge Windows 2000 Server [applications de bureau uniquement]
Plateforme cible Windows
En-tête winnetwk.h
Bibliothèque Mpr.lib
DLL Mpr.dll

Voir aussi

NETRESOURCE

WNetCloseEnum

WNetOpenEnum

Vue d’ensemble de Windows Networking (WNet)

Fonctions de mise en réseau Windows