Windows BRUKER - Windows USER
Windows USER er en komponent i Microsoft Windows- operativsystemet som gir kjernefunksjonalitet for å bygge enkle brukergrensesnitt . Komponenten har eksistert i alle versjoner av Windows, og omfatter funksjonalitet for vindusstyring , meldingsutveksling , inngangs behandling og standardkontroller .
Funksjonalitet og rolle
Windows USER gir en stor del av kjerneopplevelsen for Microsoft Windows. Historisk sett var det ansvarlig for:
- Å føre til at vinduer tegnes (bruker GDI som en enhetsuavhengig API for tegning av primitiver)
- Skjuler overlappende vinduer bak andre
- Vindusstørrelse og posisjonering
- Tilby alle standardvinduadministrasjonskontroller (for eksempel lukkebokser eller tittellinjer )
- Tilbyr standard Windows- menylinje
- Tilby standardkontroller (for eksempel knapp , listeboks eller redigeringsboks )
- Tilbyr dialogbokshåndtering (snarveistaster, behandling av fanetaster)
- Behandler all brukerinngang fra mus og tastatur
- Den desktop bakgrunnsbilde
- Tegning av alle standard visuelle elementer
- Inter-prosess kommunikasjon ved hjelp av Dynamic Data Exchange
- Musemarkørvisning og styring
- Dataoverføring ( utklippstavle )
Etter hvert som Windows har blitt større og bedre fakturert, har Windows USER samarbeidet med andre komponenter for å tilby denne funksjonaliteten:
- Kontroller: Fra og med Windows 95 ble nye kontroller plassert i en egen felles kontrollkomponent. Fra og med Windows XP ble nye implementeringer av standardkontrollene også flyttet til den samme komponenten.
- Windows Management-erfaring: Fra og med Windows Vista ble tegning av standardvinduadministrasjon flyttet fra Windows USER til Desktop Window Manager .
- Standardvisuelt: Fra og med Windows XP tegnes visuelle elementer av Theming-komponenten.
- Interprogramkommunikasjon: Fra og med Windows 3.1 erstattet Object Linking og Embedding Dynamic Data Exchange som anbefalt modell for interprogramkommunikasjon.
- Menylinje: Fra og med Windows 7 er båndgrensesnittet en anbefalt erstatning for menylinjen og kontekstmenyene. Den leveres av UIRibbon-komponenten.
Utvikleropplevelse
Windows USER implementerer abstraksjoner som brukes til å bygge Windows-applikasjoner. Disse inkluderer
- HWND (håndtak til vindu)
HWND er den grunnleggende enheten for visuell visning og inndata i Windows utviklerplattform. Alle visuelle elementene har enten egne HWND-er eller lever som en del av en større HWND. Mange funksjoner i Windows USER manipulerer egenskaper på HWND-er som størrelse, posisjon og tittel. Hver HWND har også en kommunikasjonskanal (WNDPROC - Window Procedure) for levering av meldinger.
Windows administreres som et tre, med skrivebordsvinduet i roten til hierarkiet. Barnevinduer er vanligvis (men ikke alltid) visuelt inneholdt i foreldrene.
- MSG (melding)
Programmer og operativsystem kommuniserer med HWND-er ved hjelp av meldinger. En vindusmelding er kombinasjonen av et mål HWND, en meldingskode og andre detaljer som museposisjon.
- Message Loop
Ved å kombinere samtaler til Windows USER på riktig måte, behandler et Windows-program meldinger. Kjernen til Windows-meldingssløyfen (inkludert samtaler til GetMessage, TranslateMessage og DispatchMessage) er kjernen i ethvert Windows-program.
Utviklerfunksjonalitet knyttet til Windows USER er gitt i C-headerfilen winuser.h.
Gjennomføring
I 16-biters versjoner av Windows ble Windows USER implementert som en fil som heter user.exe. Filutvidelsen her var feilaktig , da Windows USER faktisk alltid var et dynamisk koblingsbibliotek .
I 32-bitersversjoner av Windows kalles 32-bitersversjonen av Windows USER user32.dll og ligger i System32-katalogen, mens kompatibilitet med 16-biters applikasjoner er gitt ved å ha en modifisert versjon av user.exe også til stede.
I 64-biters versjoner av Windows kalles 64-biters implementering av Windows USER user32.dll og ligger i System32-katalogen, mens en modifisert 32-biters versjon (også kalt user32.dll) er tilstede i SysWOW64-katalogen.