啟動裝置

PnP 管理員會將 IRP_MN_START_DEVICE 要求傳送給驅動程式,以啟動新列舉的裝置,或重新開機已停止的現有裝置以進行資源重新平衡。

函式和篩選驅動程式必須設定 IoCompletion 常式、將 IRP_MN_START_DEVICE 要求向下傳遞至裝置堆疊,並延後開始作業,直到所有較低驅動程式都已完成 IRP 為止。 父匯流排驅動程式是裝置堆疊中底部驅動程式,必須是第一個驅動程式,才能在其他驅動程式存取裝置之前,先在裝置上執行其啟動作業。

為了確保啟動作業的排序正確,Windows 2000 和更新版本 Windows 上的 PnP 管理員會延後公開裝置介面,並封鎖建立裝置的要求,直到啟動 IRP 成功為止。

如果裝置的驅動程式失敗 IRP_MN_START_DEVICE 要求,PnP 管理員會將 IRP_MN_REMOVE_DEVICE 要求傳送至 Windows 2000 和更新版本的 Windows) 上的裝置堆疊 (。 為了回應此 IRP,裝置的驅動程式如果成功啟動 IRP) 、復原其 AddDevice 作業,並從裝置堆疊中斷連結,則 (。 PnP 管理員會標示這類裝置「啟動失敗」。

本節包含下列主題:

在函式驅動程式中啟動裝置

在篩選驅動程式中啟動裝置

在匯流排驅動程式中啟動裝置

啟動裝置的設計指導方針