註冊取消常式
如果裝置驅動程式有StartIo常式,其分派常式可以藉由提供其位址做為IoStartPacket的輸入來註冊Cancel常式。
如果驅動程式沒有 StartIo 常式,其分派常式必須先執行下列動作,才能佇列 IRP 以供其他驅動程式常式進一步處理:
使用驅動程式提供的Cancel常式輸入 IRP 和進入點呼叫IoSetCancelRoutine。
如需取消微調鎖定的相關資訊,請參閱 使用系統的取消微調鎖定。
管理自己的 IRP 佇列,而不是使用 I/O 管理員提供的裝置佇列的驅動程式,不需要在呼叫 IoSetCancelRoutine時取得取消微調鎖定。 不過,這些驅動程式應該檢查IoSetCancelRoutine傳回的Cancel常式指標,以判斷Cancel常式是否已啟動。