Freigeben über


WTSQuerySessionInformationA-Funktion (wtsapi32.h)

Ruft Sitzungsinformationen für die angegebene Sitzung auf dem angegebenen Remotedesktop-Sitzungshostserver (RD Session Host) ab. Es kann verwendet werden, um Sitzungsinformationen auf lokalen und Remote-RD-Sitzungshostservern abzufragen.

Syntax

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

Parameter

[in] hServer

Ein Handle zu einem RD-Sitzungshostserver. Geben Sie ein Handle an, das von der WTSOpenServer--Funktion geöffnet wird, oder geben Sie WTS_CURRENT_SERVER_HANDLE an, um den RD-Sitzungshostserver anzugeben, auf dem Ihre Anwendung ausgeführt wird.

[in] SessionId

Ein Sitzungsbezeichner für Remotedesktopdienste. Um die Sitzung anzugeben, in der die aufrufende Anwendung ausgeführt wird (oder die aktuelle Sitzung), geben Sie WTS_CURRENT_SESSIONan. Geben Sie beim Abrufen von Sitzungsinformationen auf dem lokalen Server nur WTS_CURRENT_SESSION an. Wenn WTS_CURRENT_SESSION beim Abfragen von Sitzungsinformationen auf einem Remoteserver angegeben wird, sind die zurückgegebenen Sitzungsinformationen inkonsistent. Verwenden Sie die zurückgegebenen Daten nicht.

Sie können die WTSEnumerateSessions Funktion verwenden, um die IDs aller Sitzungen auf einem angegebenen RD-Sitzungshostserver abzurufen.

Um Informationen für die Sitzung eines anderen Benutzers abzufragen, müssen Sie über die Berechtigung "Abfrageinformationen" verfügen. Weitere Informationen finden Sie unter Berechtigungen für Remotedesktopdienste. Verwenden Sie das Verwaltungstool für remotedesktopdienste, um Berechtigungen für eine Sitzung zu ändern.

[in] WTSInfoClass

Ein Wert der WTS_INFO_CLASS-Aufzählung, die den Typ der Sitzungsinformationen angibt, die in einem Aufruf der WTSQuerySessionInformation-Funktion abgerufen werden sollen.

[out] ppBuffer

Ein Zeiger auf eine Variable, die einen Zeiger auf die angeforderten Informationen empfängt. Das Format und der Inhalt der Daten sind von der Informationsklasse abhängig, die in der WTSInfoClass Parameter angegeben ist. Rufen Sie zum Freigeben des zurückgegebenen Puffers die WTSFreeMemory-Funktion auf.

[out] pBytesReturned

Ein Zeiger auf eine Variable, die die Größe der in ppBuffer-zurückgegebenen Daten in Byte empfängt.

Rückgabewert

Wenn die Funktion erfolgreich ist, ist der Rückgabewert ein Wert ungleich Null.

Wenn die Funktion fehlschlägt, ist der Rückgabewert null. Rufen Sie GetLastErrorauf, um erweiterte Fehlerinformationen zu erhalten.

Bemerkungen

Um die Sitzungs-ID für die aktuelle Sitzung abzurufen, wenn Remotedesktopdienste ausgeführt werden, rufen Sie WTSQuerySessionInformation- auf, und geben Sie WTS_CURRENT_SESSION für den Parameter SessionId und WTSSessionId für den WTSInfoClass Parameter an. Die Sitzungs-ID wird im ppBuffer--Parameter zurückgegeben. Wenn Remotedesktopdienste nicht ausgeführt werden, schlagen Aufrufe von WTSQuerySessionInformation fehl. In diesem Fall können Sie die aktuelle Sitzungs-ID abrufen, indem Sie die ProcessIdToSessionId--Funktion aufrufen.

Um festzustellen, ob ihre Anwendung auf der physischen Konsole ausgeführt wird, müssen Sie WTS_CURRENT_SESSION für den parameter SessionId angeben und WTSClientProtocolType als WTSInfoClass Parameter. Wenn ppBuffer "0" ist, wird die Sitzung an die physische Konsole angefügt.

Anmerkung

Der wtsapi32.h-Header definiert WTSQuerySessionInformation als Alias, der die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante automatisch auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit Code, der nicht codierungsneutral ist, kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Windows Vista
mindestens unterstützte Server- Windows Server 2008
Zielplattform- Fenster
Header- wtsapi32.h
Library Wtsapi32.lib
DLL- Wtsapi32.dll
API-Satz ext-ms-win-session-wtsapi32-l1-1-0 (eingeführt in Windows 8)

Siehe auch

WTSCONFIGINFO

WTSINFOEX-

WTS_CLIENT_ADDRESS

WTS_CLIENT_DISPLAY

WTS_CONNECTSTATE_CLASS

WTS_INFO_CLASS

WTS_SESSION_ADDRESS