Compartilhar via


IRP_MN_EJECT

Normalmente, os motoristas de barramento lidam com essa solicitação para seus dispositivos filho (PDOs filho) que dão suporte à ejeção do dispositivo. Os drivers de função e filtro não recebem essa solicitação.

Valor

0x11

Código principal

IRP_MJ_PNP

Quando enviado

O gerenciador PnP envia esse IRP para direcionar o driver ou drivers apropriados para ejetar o dispositivo de seu slot.

O gerenciador PnP envia esse IRP no IRQL PASSIVE_LEVEL em um contexto de thread arbitrário.

Parâmetros de Entrada

Nenhum

Parâmetros de saída

Nenhum

Bloco de Status de E/S

Um motorista de ônibus define Irp-IoStatus.Status> como STATUS_SUCCESS ou para um erro apropriado status.

Com êxito, um motorista de ônibus define Irp-IoStatus.Information> como zero.

Se um motorista de ônibus não manipular esse IRP, ele deixará Irp-IoStatus.Status> como está e concluirá o IRP.

Operação

Para que o dispositivo seja ejetado, o dispositivo deve estar no estado de energia do dispositivo D3 (desativado) e deve ser desbloqueado (se o dispositivo der suporte ao bloqueio).

Qualquer driver que retorna êxito para esse IRP deve aguardar até que o dispositivo tenha sido ejetado antes de concluir o IRP.

Consulte Plug and Play para obter as regras gerais para lidar com Plug and Play IRPs menores.

Enviando este IRP

Reservado para uso do sistema. Os drivers não devem enviar esse IRP.

Em vez disso, consulte a página de referência para a rotina IoRequestDeviceEject .

Requisitos

parâmetro

Wdm.h (inclua Wdm.h, Ntddk.h ou Ntifs.h)

Confira também

IoRequestDeviceEject