Sdílet prostřednictvím


Zpracování požadavku IRP_MN_REMOVE_DEVICE

Správce PnP pomocí tohoto protokolu IRP směruje ovladače k odebrání softwarové reprezentace zařízení (objektů zařízení atd.). Správce PnP odešle tento požadavek IRP, pokud bylo zařízení odebráno řádným způsobem (například inicioval uživatel v programu Odpojit nebo vysunout hardware), neočekávaně (uživatel vytáhne zařízení ze slotu bez předchozího upozornění) nebo když uživatel požádá o aktualizaci ovladačů.

V systémech Windows 2000 a novějších odešle správce PnP tento IRP, když Správce zařízení zakáže zařízení. Ve Windows 98/Me správce PnP odesílá místo toho IRP (požadavky na přerušení). Podrobnosti najdete v tématu Zastavení zařízení .

Správce PnP provede před odesláním tohoto protokolu IRP ovladačům zařízení následující:

  • Odesílá IRP_MN_REMOVE_DEVICE požadavky na podřízená zařízení, pokud existují.

  • Upozorní všechny komponenty uživatelského režimu a ovladače režimu jádra, které se zaregistrovaly k oznámení, že se zařízení odebírá. Správce PnP volá všechny komponenty uživatelského režimu zaregistrované pro oznámení cílového zařízení v popisovači zařízení a volá ovladače režimu jádra zaregistrované pro EventCategoryTargetDeviceChange.

  • (V systémech Windows 2000 a novějších) Pokud je na zařízení připojený systém souborů, správce PnP odešle žádost o odebrání na systém souborů a na všechny filtry systému souborů. V reakci systém souborů obvykle odpojí svazek.

Horní ovladač v zásobníku zařízení zpracovává odebrané IRP a předá ho dalšímu nižšímu ovladači. Nadřazený ovladač sběrnice pro zařízení je posledním ovladačem, který provádí operace odebrání zařízení. Ovladač zpracovává odstranění IRP ve své rutině DispatchPnP.

Než ovladač úspěšně vyřídí požadavek IRP_MN_REMOVE_DEVICE, musí se ujistit, že byly uvolněny všechny prostředky pro zařízení. Tento IRP může být posledním voláním před uvolněním ovladače.

Odebráním jednoho zařízení může být potřeba odebrat řadu dalších zařízení. Správce PnP koordinuje odebrání dalších objektů zařízení z nejvyšší úrovně dolů na úroveň kořenového zařízení.

Tato část popisuje:

Odebrání zařízení v funkčním ovladači

Odebrání zařízení v ovladači filtru

Odebrání zařízení v ovladači sběrnice