Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Pokud chcete určit typ události zařízení při zpracování zprávy WM_DEVICECHANGE, zkontrolujte parametr wParam. Hodnota wParam určuje význam dat specifických pro události v parametru lParam. Obecně platí, že data specifická pro události identifikují zařízení a poskytují další podrobnosti o události. Formát těchto dat závisí na typu zařízení, ale prvních několik bajtů vždy má stejný formát jako struktura DEV_BROADCAST_HDR. Pokud chcete určit formát dat, zkontrolujte dbch_devicetype člena.
Systém vysílá událost zařízení typu DBT_DEVICEARRIVAL (tj. zprávu WM_DEVICECHANGE s wParam nastavenou na DBT_DEVICEARRIVAL) při každém vložení zařízení a je k dispozici pro použití. Aplikace obvykle kontrolují typ zařízení a pokud je to vhodné, začnou zařízení okamžitě používat.
Systém vysílá událost zařízení DBT_DEVICEQUERYREMOVE a požádá o oprávnění k odebrání zařízení. Pokud chcete zjistit, jestli zařízení potřebuje, může aplikace zobrazit dialogové okno s výzvou k zadání pokynů uživateli. Pokud aplikace zjistí, že zařízení potřebuje, může tuto žádost odepřít a zrušit odebrání vrácením BROADCAST_QUERY_DENY. Pokud aplikace zařízení nepotřebuje, musí vrátit TRUE. Systém okamžitě odešle DBT_DEVICEQUERYREMOVEFAILED zprávu, pokud nějaká aplikace nebo ovladač zrušil předchozí požadavek na odebrání zařízení.
Systém před odebráním zařízení vysílá událost DBT_DEVICEREMOVEPENDING zařízení jako poslední upozornění. V tomto okamžiku aplikace nemůže zrušit odebrání, takže pokud používá zařízení, musí se připravit na jeho odebrání, aby se zabránilo ztrátě dat. To je zvlášť důležité, když se odebírá síťové připojení. Aplikace musí určit, zda jsou v daném připojení některé z otevřených souborů nebo kanálů. To lze provést porovnáním identifikátoru síťového prostředku v datech specifických pro události zprávy s identifikátory prostředků, které byly dříve získány pro soubory a kanály. Systém vysílá událost zařízení DBT_DEVICEREMOVECOMPLETE, když bylo zařízení odebráno a už není k dispozici.
Systém vysílá událost DBT_QUERYCHANGECONFIG zařízení, aby požádala o oprávnění ke změně aktuální konfigurace (dock nebo undock). Každá aplikace může vrátit BROADCAST_QUERY_DENY, aby žádost odepřela a zrušila změnu. Pokud aplikace požadavek odmítne, systém odešle zprávu DBT_CONFIGCHANGECANCELED. Pokud se aktuální konfigurace změnila kvůli ukotvení nebo zrušení, odešle systém zprávu DBT_CONFIGCHANGED.
Systém vysílá událost DBT_DEVICETYPESPECIFIC zařízení vždy, když dojde k události specifické pro zařízení.
Ovladače můžou vytvářet vlastní typy událostí. Vlastní události se odesílají jenom do aplikace, která zaregistrovala oznámení o událostech zařízení na konkrétním zařízení, a dají se spustit pouze ovladači režimu jádra. Další informace najdete v tématu DBT_CUSTOMEVENT.