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 |
---|---|
|
Retourne le nom de l’utilisateur actuellement connecté à la station de travail. Le paramètre bufptr pointe vers une structure WKSTA_USER_INFO_0 . |
|
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 . |
|
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 |
---|---|
|
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. |
|
Le paramètre level n’est pas valide. |
|
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
Vue d’ensemble de la gestion du réseau
Fonctions utilisateur de station de travail et de station de travail