UŻYTKOWNIK Windows - Windows USER
Windows USER to składnik systemu operacyjnego Microsoft Windows , który zapewnia podstawową funkcjonalność do tworzenia prostych interfejsów użytkownika . Komponent istnieje we wszystkich wersjach systemu Windows i zawiera funkcje zarządzania oknami , przekazywania komunikatów , przetwarzania danych wejściowych i standardowych elementów sterujących .
Funkcjonalność i rola
Windows USER zapewnia dużą część podstawowego środowiska użytkownika systemu Microsoft Windows. Historycznie odpowiadał za:
- Spowodowanie rysowania okien (używając GDI jako niezależnego od urządzenia API do rysowania prymitywów)
- Zasłanianie zachodzących na siebie okien za innymi
- Rozmiar i pozycjonowanie okna
- Zapewnienie wszystkich standardowych kontrolek zarządzania oknami (takich jak pola zamykania lub paski tytułu )
- Zapewnienie standardowego paska menu Windows
- Zapewnienie standardowych kontrolek (takich jak przycisk , Pole listy lub Pole edycji )
- Zapewnienie zarządzania oknami dialogowymi (klawisze skrótów, przetwarzanie klawiszy tabulacji)
- Przetwarzanie wszystkich danych wejściowych użytkownika z myszy i klawiatury
- Obraz tła pulpitu
- Rysowanie wszystkich standardowych elementów wizualnych
- Komunikacja międzyprocesowa za pomocą dynamicznej wymiany danych
- Wyświetlanie i zarządzanie kursorem myszy
- Transfer danych ( Schowek )
Stopniowo, w miarę jak Windows stał się większy i lepiej uwzględniony, Windows USER współpracował z innymi komponentami, aby zapewnić tę funkcjonalność:
- Sterowanie: Począwszy od systemu Windows 95 nowe elementy sterujące zostały umieszczone w oddzielnym wspólnym składniku sterowania. Począwszy od systemu Windows XP , do tego samego komponentu przeniesiono również nowe implementacje standardowych kontrolek.
- Środowisko zarządzania Windows: począwszy od Windows Vista standardowe zarządzanie oknami rysunku zostało przeniesione z Windows USER do Desktop Window Manager .
- Standardowe elementy wizualne: począwszy od systemu Windows XP elementy wizualne są rysowane przez składnik Theming.
- Komunikacja między programami: Począwszy od systemu Windows 3.1, łączenie i osadzanie obiektów zastąpiło dynamiczną wymianę danych jako zalecany model komunikacji między programami.
- Pasek menu: Począwszy od systemu Windows 7, interfejs wstążki jest zalecanym zamiennikiem paska menu i menu kontekstowych. Jest dostarczany przez komponent UIRibbon.
Doświadczenie programisty
Windows USER implementuje abstrakcje, które są używane do tworzenia aplikacji systemu Windows. Obejmują one
- HWND (uchwyt do okna)
HWND to podstawowa jednostka wizualnego wyświetlania i wprowadzania danych na platformie programistycznej Windows. Wszystkie elementy wizualne mają własne HWND lub są częścią większego HWND. Wiele funkcji w Windows USER manipuluje właściwościami na HWND, takimi jak rozmiar, pozycja i tytuł. Każdy HWND posiada również kanał komunikacyjny (WNDPROC - Procedura okna) do dostarczania wiadomości.
Okna są zarządzane jako drzewo, z oknem pulpitu u podstaw hierarchii. Okna dziecięce są zwykle (ale nie zawsze) wizualnie zawarte w ich rodzicach.
- MSG (wiadomość)
Aplikacje i system operacyjny komunikują się z urządzeniami HWND za pomocą komunikatów. Komunikat w oknie jest kombinacją docelowego HWND, kodu komunikatu i innych szczegółów, takich jak pozycja myszy.
- Pętla wiadomości
Łącząc we właściwy sposób wywołania użytkownika Windows USER, aplikacja Windows przetwarza komunikaty. Podstawowa pętla komunikatów systemu Windows (w tym wywołania GetMessage, TranslateMessage i DispatchMessage) jest rdzeniem każdej aplikacji systemu Windows.
Funkcjonalność programisty związana z Windows USER znajduje się w pliku nagłówkowym C winuser.h.
Realizacja
W 16-bitowych wersjach systemu Windows, Windows USER został zaimplementowany jako plik o nazwie user.exe. Rozszerzenie pliku tutaj było mylące , ponieważ Windows USER w rzeczywistości zawsze był biblioteką dołączaną dynamicznie .
W 32-bitowych wersjach systemu Windows 32-bitowa wersja Windows USER nosi nazwę user32.dll i znajduje się w katalogu System32, a zgodność z 16-bitowymi aplikacjami zapewnia również zmodyfikowana wersja user.exe.
W 64-bitowych wersjach systemu Windows 64-bitowa implementacja Windows USER nosi nazwę user32.dll i znajduje się w katalogu System32, podczas gdy zmodyfikowana wersja 32-bitowa (zwana także user32.dll) znajduje się w katalogu SysWOW64.