Função NetWkstaUserGetInfo (lmwksta.h)
A função NetWkstaUserGetInfo retorna informações sobre o usuário conectado no momento. Essa função deve ser chamada no contexto do usuário conectado.
Sintaxe
NET_API_STATUS NET_API_FUNCTION NetWkstaUserGetInfo(
LMSTR reserved,
[in] DWORD level,
[out] LPBYTE *bufptr
);
Parâmetros
reserved
Esse parâmetro deve ser definido como NULL.
[in] level
Especifica o nível de informações dos dados. Esse parâmetro pode usar um dos valores a seguir.
Valor | Significado |
---|---|
|
Retornar o nome do usuário conectado atualmente à estação de trabalho. O parâmetro bufptr aponta para uma estrutura WKSTA_USER_INFO_0 . |
|
Retornar informações sobre a estação de trabalho, incluindo o nome do usuário atual e os domínios acessados pela estação de trabalho. O parâmetro bufptr aponta para uma estrutura WKSTA_USER_INFO_1 . |
|
Retornar domínios navegados pela estação de trabalho. O parâmetro bufptr aponta para uma estrutura WKSTA_USER_INFO_1101 . |
[out] bufptr
Ponteiro para o buffer que recebe os dados. O formato desses dados depende do valor do parâmetro bufptr . Esse buffer é alocado pelo sistema e deve ser liberado usando a função NetApiBufferFree . Para obter mais informações, consulte Buffers de função de gerenciamento de rede e Comprimentos de buffer de função de gerenciamento de rede.
Valor retornado
Se a função for bem-sucedida, o valor retornado será NERR_Success.
Se a função falhar, o valor retornado poderá ser um dos códigos de erro a seguir.
Código de retorno | Descrição |
---|---|
|
O sistema ficou sem recursos de memória. A configuração do gerenciador de rede está incorreta ou o programa está em execução em um sistema com memória insuficiente. |
|
O parâmetro de nível é inválido. |
|
Um dos parâmetros de função é inválido. |
Comentários
A função NetWkstaUserGetInfo só funciona localmente.
Exemplos
O exemplo de código a seguir demonstra como recuperar informações sobre o usuário conectado no momento usando uma chamada para a função NetWkstaUserGetInfo . O exemplo chama NetWkstaUserGetInfo, especificando o nível de informações 1 ( WKSTA_USER_INFO_1). Se a chamada for bem-sucedida, o exemplo imprimirá informações sobre o usuário conectado. Por fim, o exemplo libera a memória alocada para o buffer de informações.
#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;
}
Requisitos
Cliente mínimo com suporte | Windows 2000 Professional [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows 2000 Server [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | lmwksta.h (inclua Lm.h) |
Biblioteca | Netapi32.lib |
DLL | Netapi32.dll |
Confira também
Funções de gerenciamento de rede
Visão geral do gerenciamento de rede
Funções de usuário de estação de trabalho e estação de trabalho