Función IoSetHardErrorOrVerifyDevice (ntddk.h)
Los controladores de nivel inferior llaman a la rutina IoSetHardErrorOrVerifyDevice para identificar un dispositivo multimedia extraíble que ha encontrado un error, de modo que un controlador del sistema de archivos pueda pedir al usuario que compruebe que el medio es válido.
Sintaxis
void IoSetHardErrorOrVerifyDevice(
[in] PIRP Irp,
[in] PDEVICE_OBJECT DeviceObject
);
Parámetros
[in] Irp
Puntero al IRP para el que el controlador encontró un error provocado por el usuario.
[in] DeviceObject
Puntero al dispositivo de destino que se va a comprobar para la operación de E/S.
Valor devuelto
None
Observaciones
Los controladores de nivel inferior para los dispositivos multimedia de eliminación deben llamar a IoSetHardErrorOrVerifyDevice antes de completar un IRP, si una llamada a IoIsErrorUserInduced devuelve TRUE. Para obtener más información, vea Compatibilidad con medios extraíbles.
Posteriormente, un controlador del sistema de archivos usará la información proporcionada en el objeto de dispositivo especificado para enviar un cuadro de diálogo al usuario, que puede corregir el error y volver a intentar la operación o cancelarla.
El IRP pasado a IoSetHardErrorOrVerifyDevice debe estar asociado a un subproceso. Por lo tanto, antes de que un controlador llame a IoSetHardErrorOrVerifyDevice, debe comprobar que irp-Tail.Overlay>. El subproceso no es NULL. Si el valor es NULL, no se debe llamar a IoSetHardErrorOrVerifyDevice mediante el IRP actual. En su lugar, el controlador debe comprobar todos los IRP recibidos y procesados posteriormente, hasta que se reciba uno para el que irp-Tail.Overlay>. El subproceso no es NULL. En ese momento, se puede llamar a IoSetHardErrorOrVerifyDevice .
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Disponible a partir de Windows 2000. |
Plataforma de destino | Universal |
Encabezado | ntddk.h (incluya Ntddk.h) |
Library | NtosKrnl.lib |
Archivo DLL | NtosKrnl.exe |
IRQL | <=DISPATCH_LEVEL |