Sdílet prostřednictvím


Přidělení ID WinEventu

Každý winEvent se má použít jenom pro konkrétní účel. Použití winEventu pro nezamýšlený účel může způsobit kolize s jinými aplikacemi nebo operačním systémem, což může způsobit nestabilitu aplikací nebo operačního systému.

Společnost Microsoft definovala několik různých kategorií WinEvents a pro každou kategorii definovala jednu nebo více rozsahů hodnot pro použití jako ID winEventu. Rozsah rezervovaných pro komunitu (0xA000 – 0xAFFF) je k dispozici pro aplikace, které potřebují definovat nové winEventy. Použití hodnot z tohoto rozsahu pomáhá snížit riziko kolizí; Vývojáři, kteří vytvářejí nové winEventy, ale stále potřebují spolupracovat, aby se vyhnuli kolizím mezi svými aplikacemi.

Následující tabulka uvádí kategorie WinEvent a rozsahy hodnot definovaných pro každou kategorii.

Kategorie Rozmezí Aktuálně se používá Komentáře
Události Microsoft Active Accessibility (rezervované systém) 0x0001 0x00FF 0x0020 0x0001 ID událostí EVENT_SYSTEM_*
Události Microsoft Active Accessibility (rezervované systém) 0x4001 0x40FF 0x4001 0x4007 ID událostí EVENT_CONSOLE_*
Události automatizace uživatelského rozhraní (rezervované systémem) 0x4EFF 0x4E00 0x4E20-0x4E33 ID událostí automatizace uživatelského rozhraní
Události automatizace uživatelského rozhraní (rezervované systémem) 0x75FF 0x7500 0x759B 0x7530 ID událostí změněných vlastností automatizace uživatelského rozhraní
Události Microsoft Active Accessibility (rezervované systém) 0x8000 0x80FF 0x8000-0x8015 ID událostí EVENT_OBJECT_*
Rezervovaná OEM 0x0101 0x01FF 0x0101 0x0122 ID událostí IAccessible2
Rezervovaná komunita 0xA000-0xAFFF Žádný Vyhrazeno pro nové události definované specifikacemi AIA (Accessibility Interoperability Alliance)
ATOM 0xC000-0xFFFF 0xC000-0xFFFF Vyhrazeno pro vlastní události přidělené za běhu

 

Následující témata popisují rozsahy WinEvent podrobněji.

Události automatizace uživatelského rozhraní a přístupnosti v Microsoftu

Pět rozsahů ID WinEventu je vyhrazeno pro použití službou Microsoft Active Accessibility a Microsoft UI Automation. První rozsah (0x0001 – 0x00FF) je vyhrazený pro události na úrovni systému, obvykle se používá k popisu situací ovlivňujících všechny aplikace v systému. Druhý rozsah (0x4001 – 0x40FF) je vyhrazený pro události specifické pro konzolu Windows. Třetí (0x4E00 – 0x4EFF) a čtvrté oblasti (0x7500 – 0x75FF) jsou určené pro reflexi událostí automatizace uživatelského rozhraní. Nakonec je pátý rozsah (0x8000 – 0x80FF) pro události na úrovni objektů, které se týkají situací specifických pro objekty v jedné aplikaci.

Všechny události microsoft Active Accessibility a automatizace uživatelského rozhraní jsou definovány v souborech hlaviček WinUser.h a UIAutomationClient.h.

Rezervované události OEM

Vyhrazený rozsah OEM je otevřený všem uživatelům, kteří potřebují používat WinEvents jako komunikační mechanismus. Vývojáři by měli definovat a publikovat definice událostí spolu s jejich parametry (nebo také s přidruženými typy objektů) pro zpracování událostí, aby se zabránilo náhodným kolizím ID událostí. Specifikace IAccessible2 používá část rezervovaného rozsahu OEM.

Rezervované události komunity

Rozsah rezervovaných pro komunitu je určen pro WinEventy určené organizací AIA (Accessibility Interoperability Alliance) pro použití v celém odvětví. Vývojáři důrazně doporučujeme definovat a publikovat oficiální specifikaci před použitím hodnot z tohoto rozsahu.

Události ATOM

Rozsah ATOM je vyhrazený pro ID událostí přidělených za běhu prostřednictvím rozhraní API pro rozšiřitelnost automatizace uživatelského rozhraní. Nepoužívejte hodnoty z oblasti ATOM pro žádný jiný účel. Použití funkce GlobalAddAtom s identifikátorem GUID řetězce je doporučená metoda přidělování WinEvents z rozsahu ATOM.

Použití hodnot z rezervovaného rozsahu

Podle specifikace WinEvent nelze hodnoty z rezervovaného rozsahu systému nebo jiné nedefinované oblasti použít bez revizí sady SDK. U nových prostředí WinEvents by aplikace měly používat hodnoty z rezervovaných rozsahů OEM nebo rezervovaných oblastí komunity. Před použitím nového programu WinEvent se vývojářům důrazně doporučuje, aby své specifikace sdíleli veřejně a široce a měli by spolupracovat s Aliancemi pro interoperabilitu přístupnosti a definovat specifikace WinEvent.

WinEvents

Interoperability Alliance pro usnadnění přístupu