Compartilhar via


Função IoSetHardErrorOrVerifyDevice (ntddk.h)

Os drivers de nível inferior chamam a rotina IoSetHardErrorOrVerifyDevice para identificar um dispositivo de mídia removível que encontrou um erro, para que um driver do sistema de arquivos possa solicitar ao usuário que verifique se o meio é válido.

Sintaxe

void IoSetHardErrorOrVerifyDevice(
  [in] PIRP           Irp,
  [in] PDEVICE_OBJECT DeviceObject
);

Parâmetros

[in] Irp

Ponteiro para o IRP para o qual o driver encontrou um erro induzido pelo usuário.

[in] DeviceObject

Ponteiro para o dispositivo de destino a ser verificado para a operação de E/S.

Valor de retorno

Nenhum

Observações

Drivers de nível inferior para dispositivos de mídia de remoção devem chamar IoSetHardErrorOrVerifyDevice antes de concluir um IRP, se uma chamada para IoIsErrorUserInduced retornar VERDADEIRO. Para obter mais informações, consulte suporte aode mídia removível.

Posteriormente, um driver do sistema de arquivos usará as informações fornecidas no objeto de dispositivo especificado para enviar uma caixa de diálogo ao usuário, que pode corrigir o erro e repetir a operação ou cancelá-la.

O IRP passado para IoSetHardErrorOrVerifyDevice deve estar associado a um thread. Portanto, antes que um driver chame IoSetHardErrorOrVerifyDevice, ele deve verificar se irp->Tail.Overlay. O thread não é NULL. Se o valor for NULL, IoSetHardErrorOrVerifyDevice não deverá ser chamado usando o IRP atual. Em vez disso, o driver deve verificar todos os IRPs recebidos e processados posteriormente, até que um seja recebido para o qual de irp ->Tail.Overlay. O thread não é NULL. Nesse ponto, IoSetHardErrorOrVerifyDevice pode ser chamada.

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 <=DISPATCH_LEVEL

Consulte também

IoIsErrorUserInduced

IoRaiseHardError

IoRaiseInformationalHardError