Поделиться через


Функция WTSEnumerateSessionsExA (wtsapi32.h)

Извлекает список сеансов на указанном сервере узла сеансов удаленных рабочих столов (узла сеансов удаленных рабочих столов) или на узле виртуализации удаленных рабочих столов (RD Virtualization Host).

Синтаксис

BOOL WTSEnumerateSessionsExA(
  [in]      HANDLE               hServer,
  [in, out] DWORD                *pLevel,
  [in]      DWORD                Filter,
  [out]     PWTS_SESSION_INFO_1A *ppSessionInfo,
  [out]     DWORD                *pCount
);

Параметры

[in] hServer

Дескриптор целевого сервера. Укажите дескриптор, возвращаемый функцией WTSOpenServer или WTSOpenServerEx . Чтобы перечислить сеансы на сервере узла сеансов удаленных рабочих стола, на котором выполняется приложение, укажите WTS_CURRENT_SERVER_HANDLE.

[in, out] pLevel

Этот параметр зарезервирован. Всегда присвойте этому параметру значение one. В выходных данных WTSEnumerateSessionsEx не изменяет значение этого параметра.

[in] Filter

Этот параметр зарезервирован. Всегда устанавливайте для этого параметра нулевое значение.

[out] ppSessionInfo

Указатель на переменную PWTS_SESSION_INFO_1 , получающую указатель на массив WTS_SESSION_INFO_1 структур. Каждая структура в массиве содержит сведения о сеансе на указанном сервере узла сеансов удаленных рабочих стола. Если вы получили дескриптор для сервера узла виртуализации удаленных рабочих столов путем вызова функции WTSOpenServerEx , массив содержит сведения о сеансах на виртуальных машинах на сервере. Завершив использование массива, освободите его, вызвав функцию WTSFreeMemoryEx . Также следует задать для указателя значение NULL.

[out] pCount

Указатель на переменную DWORD , которая получает количество WTS_SESSION_INFO_1 структур, возвращаемых в буфере ppSessionInfo .

Возвращаемое значение

Если функция выполняется успешно, возвращаемое значение будет ненулевым.

Если функция выполняется неудачно, возвращается нулевое значение. Чтобы получить расширенные сведения об ошибке, вызовите функцию GetLastError .

Комментарии

Чтобы получить сведения о сеансах, выполняемых на виртуальных машинах на сервере узла виртуализации удаленных рабочих столов, необходимо получить дескриптор, вызвав функцию WTSOpenServerEx . Чтобы освободить возвращенный буфер, вызовите функцию WTSFreeMemoryEx и задайте для параметра WTSClassType значениеWTSTypeSessionInfoLevel1.

Чтобы перечислить сеанс, необходимо иметь разрешение Сведения о запросе для этого сеанса. Дополнительные сведения см. в разделе Разрешения служб удаленных рабочих столов. Чтобы изменить разрешения для сеанса, используйте средство администрирования конфигурации служб удаленных рабочих столов.

Для перечисления сеансов, выполняемых на виртуальной машине, размещенной на сервере узла виртуализации удаленных рабочих стола, необходимо быть членом группы администраторов на сервере узла виртуализации удаленных рабочих столов.

Примечание

Заголовок wtsapi32.h определяет WTSEnumerateSessionsEx как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОД. Использование псевдонима, не зависящий от кодирования, с кодом, который не является нейтральным для кодировки, может привести к несоответствиям, которые приводят к ошибкам компиляции или времени выполнения. Дополнительные сведения см. в разделе Соглашения для прототипов функций.

Требования

Требование Значение
Минимальная версия клиента Windows 7
Минимальная версия сервера Windows Server 2008 R2
Целевая платформа Windows
Header wtsapi32.h
Библиотека Wtsapi32.lib
DLL Wtsapi32.dll
Набор API ext-ms-win-session-wtsapi32-l1-1-0 (представлено в Windows 8)

См. также раздел

WTSFreeMemoryEx

WTSOpenServerEx

WTS_SESSION_INFO_1