次の方法で共有


IoDeleteController 関数 (ntddk.h)

IoDeleteController ルーチンは、特定のコントローラー オブジェクトを作成したドライバーがアンロードされるときに、システムから削除します。

構文

void IoDeleteController(
  [in] PCONTROLLER_OBJECT ControllerObject
);

パラメーター

[in] ControllerObject

解放するコントローラー オブジェクトへのポインター。

戻り値

何一つ

備考

IoDeleteController 、コントローラー拡張機能を含むコントローラー オブジェクトのメモリの割り当てを解除します。

このルーチンは、コントローラー オブジェクトを作成したドライバーがアンロードされている場合、またはドライバーがデバイスの起動時に致命的なエラー (物理デバイスを適切に初期化できないなど) が発生した場合に呼び出す必要があります。

ドライバーは、IoDeleteController を呼び出す前に、ドライバーがコントローラー拡張機能で記憶域を提供した特定のリソース解放する必要があります。 たとえば、ドライバーがコントローラー拡張機能に割り込みオブジェクトへのポインターを格納する場合は、IoDeleteController する前に、IoDisconnectInterrupt 呼び出す必要があります。

必要条件

要件 価値
サポートされる最小クライアント Windows 2000 以降で使用できます。
ターゲット プラットフォーム 万国
ヘッダー ntddk.h (Ntddk.h を含む)
ライブラリ NtosKrnl.lib
DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL
DDI コンプライアンス規則 する HwStorPortProhibitedDDDIs(storport), IrqlIoPassive4(wdm), PowerIrpDDis(wdm)

関連項目

IoCreateController

IoDisconnectInterrupt