Partager via


NetWkstaUserGetInfo, fonction (lmwksta.h)

La fonction NetWkstaUserGetInfo retourne des informations sur l’utilisateur actuellement connecté. Cette fonction doit être appelée dans le contexte de l’utilisateur connecté.

Syntaxe

NET_API_STATUS NET_API_FUNCTION NetWkstaUserGetInfo(
        LMSTR  reserved,
  [in]  DWORD  level,
  [out] LPBYTE *bufptr
);

Paramètres

reserved

Ce paramètre doit être défini sur NULL.

[in] level

Spécifie le niveau d’informations des données. Ce paramètre peut prendre les valeurs suivantes.

Valeur Signification
0
Retourne le nom de l’utilisateur actuellement connecté à la station de travail. Le paramètre bufptr pointe vers une structure WKSTA_USER_INFO_0 .
1
Retourne des informations sur la station de travail, y compris le nom de l’utilisateur actuel et les domaines auxquels la station de travail accède. Le paramètre bufptr pointe vers une structure WKSTA_USER_INFO_1 .
1101
Retourne les domaines parcourus par la station de travail. Le paramètre bufptr pointe vers une structure WKSTA_USER_INFO_1101 .

[out] bufptr

Pointeur vers la mémoire tampon qui reçoit les données. Le format de ces données dépend de la valeur du paramètre bufptr . Cette mémoire tampon est allouée par le système et doit être libérée à l’aide de la fonction NetApiBufferFree . 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.

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
ERROR_NOT_ENOUGH_MEMORY
Le système a manqué de ressources de mémoire. La configuration du gestionnaire de réseau est incorrecte ou le programme s’exécute sur un système avec une mémoire insuffisante.
ERROR_INVALID_LEVEL
Le paramètre level n’est pas valide.
ERROR_INVALID_PARAMETER
L’un des paramètres de fonction n’est pas valide.

Notes

La fonction NetWkstaUserGetInfo fonctionne uniquement localement.

Exemples

L’exemple de code suivant montre comment récupérer des informations sur l’utilisateur actuellement connecté à l’aide d’un appel à la fonction NetWkstaUserGetInfo . L’exemple appelle NetWkstaUserGetInfo, en spécifiant le niveau d’informations 1 ( WKSTA_USER_INFO_1). Si l’appel réussit, l’exemple imprime des informations sur l’utilisateur connecté. Enfin, l’exemple libère la mémoire allouée pour la mémoire tampon d’informations.

#ifndef UNICODE
#define UNICODE
#endif
#pragma comment(lib, "netapi32.lib")

#include <stdio.h>
#include <windows.h> 
#include <lm.h>

int wmain(void)
{
   DWORD dwLevel = 1;
   LPWKSTA_USER_INFO_1 pBuf = NULL;
   NET_API_STATUS nStatus;
   //
   // Call the NetWkstaUserGetInfo function;
   //  specify level 1.
   //
   nStatus = NetWkstaUserGetInfo(NULL,
                                 dwLevel,
                                 (LPBYTE *)&pBuf);
   //
   // If the call succeeds, print the information
   //  about the logged-on user.
   //
   if (nStatus == NERR_Success)
   {
      if (pBuf != NULL)
      {
         wprintf(L"\n\tUser:          %s\n", pBuf->wkui1_username);
         wprintf(L"\tDomain:        %s\n", pBuf->wkui1_logon_domain);
         wprintf(L"\tOther Domains: %s\n", pBuf->wkui1_oth_domains);
         wprintf(L"\tLogon Server:  %s\n", pBuf->wkui1_logon_server);
      }
   }
   // Otherwise, print the system error.
   //
   else
      fprintf(stderr, "A system error has occurred: %d\n", nStatus);
   //
   // Free the allocated memory.
   //
   if (pBuf != NULL)
      NetApiBufferFree(pBuf);

   return 0;
}

Spécifications

   
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 lmwksta.h (include Lm.h)
Bibliothèque Netapi32.lib
DLL Netapi32.dll

Voir aussi

NetWkstaSetInfo

Fonctions de gestion réseau

Vue d’ensemble de la gestion du réseau

WKSTA_USER_INFO_0

WKSTA_USER_INFO_1

WKSTA_USER_INFO_1101

Fonctions utilisateur de station de travail et de station de travail