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 |
---|---|
|
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. |
|
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 |
---|---|
|
D’autres entrées sont disponibles avec les appels suivants. Pour plus d'informations, consultez la section Notes qui suit. |
|
Le handle spécifié par le paramètre hEnum n’est pas valide. |
|
Le réseau n'est pas disponible. (Cette condition est testée avant que la validité de hEnum soit testée.) |
|
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 |