ПОЛЬЗОВАТЕЛЬ Windows - Windows USER
ПОЛЬЗОВАТЕЛЬ Windows является составной частью Майкрософт Виндоус Операционная система который обеспечивает базовую функциональность для создания простых пользовательские интерфейсы. Компонент существует во всех версиях Windows и включает в себя функции для управление окнами, передача сообщений, обработка ввода и стандарт контроль.
Функциональность и роль
Windows USER обеспечивает большую часть основного пользовательского интерфейса Microsoft Windows. Исторически он отвечал за:[1][2]
- Отрисовка окон (использование GDI как аппаратно-независимый API для рисования примитивов)
- Затемняющий перекрывающиеся окна позади других
- Размер и расположение окна
- Обеспечение всех стандартных элементов управления окнами (таких как закрывающие окна или строки заголовка )
- Предоставление стандартной Windows строка меню
- Предоставление стандартных средств управления (например, кнопка, Окно списка или же Поле редактирования )
- Предоставление управление диалоговым окном (быстрые клавиши, обработка клавиш табуляции)
- Обработка всего пользовательского ввода с помощью мыши и клавиатуры
- В рабочий стол фоновая картинка
- Отрисовка всех стандартных визуальных элементов
- Межпроцессного взаимодействия с помощью Динамический обмен данными
- Отображение и управление курсором указателя мыши
- Передача данных (Буфер обмена )
Постепенно, по мере того, как Windows становилась больше и лучше учитывалась, Windows USER сотрудничал с другими компонентами для обеспечения этой функциональности:
- Управление: начиная с Windows 95, новые элементы управления были помещены в отдельный компонент общих элементов управления. Начиная с Windows XP в этот же компонент были перенесены новые реализации стандартных элементов управления.
- Возможности управления Windows: начиная с Виндоус виста, управление стандартными окнами чертежа было перенесено из Windows USER в Диспетчер окон рабочего стола.
- Стандартные визуальные эффекты: начиная с Windows XP, визуальные элементы рисуются с помощью компонента Theming.
- Межпрограммное взаимодействие: начиная с Windows 3.1, Связывание и внедрение объектов заменил динамический обмен данными в качестве рекомендованной модели для межпрограммного взаимодействия.
- Строка меню: Начиная с Windows 7, Лента interface является рекомендуемой заменой строки меню и контекстных меню. Он предоставляется компонентом UIRibbon.[3]
Опыт разработчиков
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.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.
Смотрите также
Рекомендации
внешняя ссылка
- Список вызовов API - USER32.DLL - Советы по использованию клиентской библиотеки пользовательского API с Visual Basic
- Исчерпывающий справочник по папкам, переменным, значениям и ссылкам WOW64