Функция EnumDesktopsA (winuser.h)

Перечисляет все рабочие столы, связанные с указанной станцией окна вызывающего процесса. Функция, в свою очередь, передает имя каждого рабочего стола в определяемую приложением функцию обратного вызова.

Синтаксис

BOOL EnumDesktopsA(
  [in, optional] HWINSTA          hwinsta,
  [in]           DESKTOPENUMPROCA lpEnumFunc,
  [in]           LPARAM           lParam
);

Параметры

[in, optional] hwinsta

Дескриптор оконной станции, рабочие столы которой должны быть перечислены. Этот дескриптор возвращается функцией CreateWindowStation, GetProcessWindowStation или OpenWindowStation и должен иметь право доступа к WINSTA_ENUMDESKTOPS. Дополнительные сведения см. в разделе Window Station Security and Access Rights.

Если этот параметр имеет значение NULL, используется текущая оконная станция.

[in] lpEnumFunc

Указатель на определяемую приложением функцию обратного вызова EnumDesktopProc .

[in] lParam

Определяемое приложением значение, передаваемое функции обратного вызова.

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

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

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

Если функция обратного вызова завершается сбоем, возвращаемое значение равно нулю. Функция обратного вызова может вызывать SetLastError , чтобы задать код ошибки для получения вызывающего объекта путем вызова Метода GetLastError.

Комментарии

Функция EnumDesktops перечисляет только те рабочие столы, для которых вызывающий процесс имеет право доступа к DESKTOP_ENUMERATE. Дополнительные сведения см. в разделе Безопасность и права доступа к рабочему столу.

Функция EnumDesktops многократно вызывает функцию обратного вызова lpEnumFunc , пока не будет перечислен последний рабочий стол или функция обратного вызова не вернет значение FALSE.

Примечание

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

Требования

   
Минимальная версия клиента Windows 2000 Professional [только классические приложения]
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Целевая платформа Windows
Header winuser.h (включая Windows.h)
Библиотека User32.lib
DLL User32.dll

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

CreateWindowStation

Настольные системы

EnumDesktopProc

GetProcessWindowStation

OpenWindowStation

Функции оконных станций и настольных компьютеров