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.

Valor de retorno

Nenhum

Observações

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
de cliente com suporte mínimo Disponível a partir do Windows 2000.
da Plataforma de Destino Universal
cabeçalho ntddk.h (inclua Ntddk.h)
biblioteca NtosKrnl.lib
de DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL
regras de conformidade de DDI HwStorPortProhibitedDIs(storport), IrqlIoPassive4(wdm), PowerIrpDDis(wdm)

Consulte também

IoCreateController

IoDisconnectInterrupt