Fonction NetFileEnum (lmshare.h)
Retourne des informations sur certains ou tous les fichiers ouverts sur un serveur, en fonction des paramètres spécifiés.
Syntaxe
NET_API_STATUS NET_API_FUNCTION NetFileEnum(
[in] LMSTR servername,
[in] LMSTR basepath,
[in] LMSTR username,
[in] DWORD level,
[out] LPBYTE *bufptr,
[in] DWORD prefmaxlen,
[out] LPDWORD entriesread,
[out] LPDWORD totalentries,
[in, out] PDWORD_PTR resume_handle
);
Paramètres
[in] servername
Pointeur vers une chaîne qui spécifie le nom DNS ou NetBIOS du serveur distant sur lequel la fonction doit s’exécuter. Si ce paramètre a la valeur NULL, l’ordinateur local est utilisé.
Cette chaîne est Unicode si _WIN32_WINNT ou FORCE_UNICODE est défini.
[in] basepath
Pointeur vers une chaîne qui spécifie un qualificateur pour les informations retournées. Si ce paramètre a la valeur NULL, toutes les ressources ouvertes sont énumérées. Si ce paramètre n’est pas NULL, la fonction énumère uniquement les ressources qui ont la valeur du paramètre basepath comme préfixe. (Un préfixe est la partie d’un chemin d’accès qui précède une barre oblique inverse.)
Cette chaîne est Unicode si _WIN32_WINNT ou FORCE_UNICODE est défini.
[in] username
Pointeur vers une chaîne qui spécifie le nom de l’utilisateur ou le nom de la connexion. Si la chaîne commence par deux barres obliques inverses (« \ »), elle indique le nom de la connexion, par exemple, « \127.0.0.1 » ou « \ClientName ». La partie du nom de connexion après les barres obliques inverses est identique au nom du client dans la structure d’informations de session retournée par la fonction NetSessionEnum . Si la chaîne ne commence pas par deux barres obliques inverses, elle indique le nom de l’utilisateur. Si ce paramètre n’est pas NULL, sa valeur sert de qualificateur pour l’énumération. Les fichiers retournés sont limités à ceux qui ont des noms d’utilisateur ou des noms de connexion qui correspondent au qualificateur. Si ce paramètre a la valeur NULL, aucun qualificateur de nom d’utilisateur n’est utilisé.
Windows Server 2008, Windows Vista, Windows Server 2003 et Windows XP : Ce paramètre est un pointeur vers une chaîne qui spécifie le nom de l’utilisateur. Si ce paramètre n’est pas NULL, sa valeur sert de qualificateur pour l’énumération. Les fichiers retournés sont limités à ceux qui ont des noms d’utilisateur correspondant au qualificateur. Si ce paramètre a la valeur NULL, aucun qualificateur de nom d’utilisateur n’est utilisé.
Cette chaîne est Unicode si _WIN32_WINNT ou FORCE_UNICODE est défini.
[in] level
Spécifie le niveau d’informations des données. Ce paramètre peut prendre les valeurs suivantes.
Valeur | Signification |
---|---|
|
Retourne le numéro d’identification du fichier. Le paramètre bufptr pointe vers un tableau de structures FILE_INFO_2 . |
|
Retourne des informations sur le fichier. Le paramètre bufptr pointe vers un tableau de structures FILE_INFO_3 . |
[out] bufptr
Pointeur vers l’adresse de la mémoire tampon qui reçoit les informations. Le format de ces données dépend de la valeur du paramètre de niveau .
Cette mémoire tampon est allouée par le système et doit être libérée à l’aide de la fonction NetApiBufferFree . Notez que vous devez libérer la mémoire tampon même si la fonction échoue avec ERROR_MORE_DATA.
[in] prefmaxlen
Spécifie la longueur maximale préférée des données retournées, en octets. Si vous spécifiez MAX_PREFERRED_LENGTH, la fonction alloue la quantité de mémoire requise pour les données. Si vous spécifiez une autre valeur dans ce paramètre, cela peut limiter le nombre d’octets retournés par la fonction. Si la taille de la mémoire tampon est insuffisante pour contenir toutes les entrées, la fonction retourne ERROR_MORE_DATA. Pour plus d’informations, consultez Mémoires tampons de fonction de gestionréseau et Longueurs de mémoire tampon des fonctions de gestion réseau.
[out] entriesread
Pointeur vers une valeur qui reçoit le nombre d’éléments réellement énumérés.
[out] totalentries
Pointeur vers une valeur qui reçoit le nombre total d’entrées qui auraient pu être énumérées à partir de la position actuelle du CV. Notez que les applications doivent considérer cette valeur uniquement comme un indicateur.
[in, out] resume_handle
Pointeur vers une valeur qui contient un handle de CV utilisé pour poursuivre une recherche de fichiers existante. Le handle doit être égal à zéro lors du premier appel et rester inchangé pour les appels suivants. Si ce paramètre a la valeur NULL, aucun handle de reprise n’est stocké.
Valeur retournée
Si la fonction réussit, la valeur de retour est NERR_Success.
Si la fonction échoue, la valeur de retour peut être l’un des codes d’erreur suivants.
Code de retour | Description |
---|---|
|
L’utilisateur n’a pas accès aux informations demandées. |
|
La valeur spécifiée pour le paramètre de niveau n’est pas valide. |
|
D’autres entrées sont disponibles. Spécifiez une mémoire tampon suffisamment grande pour recevoir toutes les entrées. |
|
La mémoire disponible est insuffisante. |
|
La mémoire tampon fournie est trop petite. |
Remarques
Seuls les membres du groupe local Administrateurs ou Opérateurs de serveur peuvent exécuter correctement la fonction NetFileEnum .
Vous pouvez appeler la fonction NetFileGetInfo pour récupérer des informations sur une ouverture particulière d’une ressource de serveur.
Si vous programmez pour Active Directory, vous pouvez peut-être appeler certaines méthodes ADSI (Active Directory Service Interface) pour obtenir les mêmes fonctionnalités que celles que vous pouvez obtenir en appelant NetFileEnum. Pour plus d’informations, consultez IADsResource et IADsFileServiceOperations.
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 | lmshare.h (inclure Lm.h) |
Bibliothèque | Netapi32.lib |
DLL | Netapi32.dll |