Funzione WTSQuerySessionInformationA (wtsapi32.h)

Recupera le informazioni della sessione per la sessione specificata nel server Host sessione Desktop remoto (host sessione Desktop remoto). Può essere usato per eseguire query sulle informazioni sulla sessione nei server host sessione desktop remoto locale e remoto.

Sintassi

BOOL WTSQuerySessionInformationA(
  [in]  HANDLE         hServer,
  [in]  DWORD          SessionId,
  [in]  WTS_INFO_CLASS WTSInfoClass,
  [out] LPSTR          *ppBuffer,
  [out] DWORD          *pBytesReturned
);

Parametri

[in] hServer

Handle per un server host sessione Desktop remoto. Specificare un handle aperto dalla funzione WTSOpenServer oppure specificare WTS_CURRENT_SERVER_HANDLE per indicare il server Host sessione Desktop remoto in cui è in esecuzione l'applicazione.

[in] SessionId

Identificatore di sessione di Servizi Desktop remoto. Per indicare la sessione in cui l'applicazione chiamante è in esecuzione (o la sessione corrente) specificare WTS_CURRENT_SESSION. Specificare WTS_CURRENT_SESSION solo quando si ottengono informazioni sulla sessione nel server locale. Se WTS_CURRENT_SESSION viene specificato quando si eseguono query sulle informazioni sulla sessione in un server remoto, le informazioni sulla sessione restituite saranno incoerenti. Non usare i dati restituiti.

È possibile usare la funzione WTSEnumerateSessions per recuperare gli identificatori di tutte le sessioni in un server host sessione Desktop remoto specificato.

Per eseguire query sulle informazioni per la sessione di un altro utente, è necessario disporre dell'autorizzazione Informazioni query. Per altre informazioni, vedere Autorizzazioni di Servizi Desktop remoto. Per modificare le autorizzazioni in una sessione, usare lo strumento di amministrazione Configurazione servizi Desktop remoto.

[in] WTSInfoClass

Valore dell'enumerazione WTS_INFO_CLASS che indica il tipo di informazioni di sessione da recuperare in una chiamata alla funzione WTSQuerySessionInformation .

[out] ppBuffer

Puntatore a una variabile che riceve un puntatore alle informazioni richieste. Il formato e il contenuto dei dati dipendono dalla classe di informazioni specificata nel parametro WTSInfoClass . Per liberare il buffer restituito, chiamare la funzione WTSFreeMemory .

[out] pBytesReturned

Puntatore a una variabile che riceve le dimensioni, in byte, dei dati restituiti in ppBuffer.

Valore restituito

Se la funzione ha esito positivo, il valore restituito è un valore diverso da zero.

Se la funzione ha esito negativo, il valore restituito è zero. Per informazioni dettagliate sull'errore, chiamare GetLastError.

Commenti

Per recuperare l'ID sessione per la sessione corrente quando Servizi Desktop remoto è in esecuzione, chiamare WTSQuerySessionInformation e specificare WTS_CURRENT_SESSION per il parametro SessionId e WTSSessionId per il parametro WTSInfoClass . L'ID sessione verrà restituito nel parametro ppBuffer . Se Servizi Desktop remoto non è in esecuzione, le chiamate a WTSQuerySessionInformation hanno esito negativo. In questa situazione è possibile recuperare l'ID sessione corrente chiamando la funzione ProcessIdToSessionId .

Per determinare se l'applicazione è in esecuzione nella console fisica, è necessario specificare WTS_CURRENT_SESSION per il parametro SessionId e WTSClientProtocolType come parametro WTSInfoClass . Se ppBuffer è "0", la sessione viene collegata alla console fisica.

Nota

L'intestazione wtsapi32.h definisce WTSQuerySessionInformation come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante preprocessore UNICODE. La combinazione dell'utilizzo dell'alias di codifica neutrale con il codice che non è neutrale dalla codifica può causare errori di corrispondenza che causano errori di compilazione o runtime. Per altre informazioni, vedere Convenzioni per i prototipi di funzione.

Requisiti

Requisito Valore
Client minimo supportato Windows Vista
Server minimo supportato Windows Server 2008
Piattaforma di destinazione Windows
Intestazione wtsapi32.h
Libreria Wtsapi32.lib
DLL Wtsapi32.dll
Set di API ext-ms-win-session-wtsapi32-l1-1-0 (introdotta in Windows 8)

Vedi anche

WTSCONFIGINFO

WTSINFOEX

WTS_CLIENT_ADDRESS

WTS_CLIENT_DISPLAY

WTS_CONNECTSTATE_CLASS

WTS_INFO_CLASS

WTS_SESSION_ADDRESS