Проверяемость утверждений, сделанных в этой статье, оспаривается. Пожалуйста ( Март 2022 г. ) |
Windows USER — компонент операционной системы Microsoft Windows , который обеспечивает базовую функциональность для создания простых пользовательских интерфейсов . Компонент существовал во всех версиях Windows и включает функциональность для управления окнами , передачи сообщений , обработки ввода и стандартных элементов управления .
Windows USER обеспечивает большую часть основного пользовательского опыта для Microsoft Windows. Исторически он отвечал за: [1] [2]
Постепенно, по мере того, как Windows становилась больше и лучше структурировалась, Windows USER начал взаимодействовать с другими компонентами для обеспечения следующей функциональности:
WallpaperHost.exe
. Везде, где USER рисовал фон рабочего стола раньше, рисуется черный цвет, за исключением случаев, когда включен DWM, в этом случае вместо этого будет отрисован акцент пользователя. [ необходима цитата ]%SystemRoot%\System32\DWMInit.dll
не существует.Windows USER реализует абстракции, которые используются для создания приложений Windows. Они включают
HWND
(Ручка к окну)Это HWND
базовая единица визуального отображения и ввода в платформе разработчика Windows. Все визуальные элементы либо имеют собственные HWND, либо существуют как часть большего HWND
. Многие функции в Windows USER манипулируют свойствами HWND, такими как размер, положение и заголовок. У каждой HWND
также есть канал связи ( WNDPROC
- Window Procedure) для доставки сообщений.
Окна управляются как дерево, с окном рабочего стола в корне иерархии. Дочерние окна обычно (но не всегда) визуально содержатся в своих родителях.
MSG
(Сообщение)Приложения и операционная система взаимодействуют с HWND с помощью сообщений. Оконовое сообщение представляет собой комбинацию цели HWND
, кода сообщения и других деталей, таких как положение мыши.
Объединяя вызовы Windows USER правильным образом, приложение Windows обрабатывает сообщения. Основной цикл сообщений Windows (включая вызовы GetMessage
, TranslateMessage
и DispatchMessage
) лежит в основе любого приложения Windows.
Функциональность разработчика, связанная с Windows USER, представлена в заголовочном файле C winuser.h.
В 16-битных версиях Windows, Windows USER был реализован как файл с именем user.exe. Расширение файла здесь было неправильным , поскольку Windows USER на самом деле всегда был динамической библиотекой .
В 32-разрядных версиях Windows 32-разрядная версия Windows USER называется user32.dll и находится в каталоге System32, тогда как совместимость с 16-разрядными приложениями обеспечивается наличием также модифицированной версии user.exe.
В 64-разрядных версиях Windows 64-разрядная реализация Windows USER называется user32.dll и находится в каталоге System32, тогда как модифицированная 32-разрядная версия (также называемая user32.dll) находится в каталоге SysWOW64.