Compartilhar via


Função IoDeleteController (ntddk.h)

A rotina IoDeleteController remove um determinado objeto de controlador do sistema, por exemplo, quando o driver que o criou está sendo descarregado.

Sintaxe

void IoDeleteController(
  [in] PCONTROLLER_OBJECT ControllerObject
);

Parâmetros

[in] ControllerObject

Ponteiro para o objeto do controlador a ser liberado.

Retornar valor

Nenhum

Comentários

IoDeleteController desaloca a memória do objeto do controlador, incluindo a extensão do controlador.

Essa rotina deve ser chamada quando um driver que criou um objeto de controlador está sendo descarregado ou quando o driver encontra um erro fatal durante a inicialização do dispositivo, como não conseguir inicializar corretamente um dispositivo físico.

Um driver deve liberar determinados recursos para os quais o driver forneceu armazenamento em sua extensão de controlador antes de chamar IoDeleteController. Por exemplo, se o driver armazenar o ponteiro para seus objetos de interrupção na extensão do controlador, ele deverá chamar IoDisconnectInterrupt antes de IoDeleteController.

Requisitos

Requisito Valor
Cliente mínimo com suporte Disponível a partir do Windows 2000.
Plataforma de Destino Universal
Cabeçalho ntddk.h (inclua Ntddk.h)
Biblioteca NtosKrnl.lib
DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL
Regras de conformidade de DDI HwStorPortProhibitedDIs(storport), IrqlIoPassive4(wdm), PowerIrpDDis(wdm)

Confira também

IoCreateController

IoDisconnectInterrupt