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


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

Открывает указанный классический объект.

Синтаксис

HDESK OpenDesktopA(
  [in] LPCSTR      lpszDesktop,
  [in] DWORD       dwFlags,
  [in] BOOL        fInherit,
  [in] ACCESS_MASK dwDesiredAccess
);

Параметры

[in] lpszDesktop

Имя открытого рабочего стола. Имена рабочих столов не учитывает регистр.

Этот рабочий стол должен принадлежать текущей станции окон.

[in] dwFlags

Этот параметр может быть равен нулю или следующему значению.

Ценность Значение
DF_ALLOWOTHERACCOUNTHOOK
0x0001
Позволяет процессам, выполняемым в других учетных записях на рабочем столе, задавать перехватчики в этом процессе.

[in] fInherit

Если это значение TRUE, процессы, созданные этим процессом, наследуют дескриптор. В противном случае процессы не наследуют этот дескриптор.

[in] dwDesiredAccess

Доступ к рабочему столу. Список прав доступа см. в разделе "Безопасность компьютеров и доступ".

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

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

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

Замечания

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

Если параметр dwDesiredAccess указывает READ_CONTROL, WRITE_DACили WRITE_OWNER стандартные права доступа, необходимо также запросить DESKTOP_READOBJECTS и DESKTOP_WRITEOBJECTS права доступа.

Заметка

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

Требования

Требование Ценность
минимальные поддерживаемые клиентские Windows 2000 Профессиональный [только классические приложения]
минимальный поддерживаемый сервер Windows 2000 Server [только классические приложения]
целевая платформа Виндоус
заголовка winuser.h (включая Windows.h)
библиотеки User32.lib
DLL User32.dll
набор API ext-ms-win-ntuser-windowstation-ansi-l1-1-1 (представлено в Windows 10 версии 10.0.14393)

См. также

CloseDesktop

CreateDesktop

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

OpenInputDesktop

SetProcessWindowStation

SetThreadDesktop

SwitchDesktop

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