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


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

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

Синтаксис

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

Параметры

[in, optional] hwinsta

Дескриптор на станции окон, рабочие столы которых необходимо перечислить. Этот дескриптор возвращается функцией CreateWindowStation, GetProcessWindowStationили функцией OpenWindowStation и должен иметь право доступа WINSTA_ENUMDESKTOPS. Дополнительные сведения см. в "Безопасность и доступ к станции окон".

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

[in] lpEnumFunc

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

[in] lParam

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

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

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

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

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

Замечания

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

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

Заметка

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

Требования

Требование Ценность
минимальные поддерживаемые клиентские Windows 2000 Профессиональный [только классические приложения]
минимальный поддерживаемый сервер Windows 2000 Server [только классические приложения]
целевая платформа Виндоус
заголовка winuser.h (включая Windows.h)
библиотеки User32.lib
DLL User32.dll

См. также

CreateWindowStation

настольных компьютеров

EnumDesktopProc

GetProcessWindowStation

OpenWindowStation

станции окон оконных станций и рабочих столов