Función IoIsValidIrpStatus (ntddk.h)
La rutina IoIsValidIrpStatus valida el valor de código de estado NTSTATUS especificado.
Sintaxis
LOGICAL IoIsValidIrpStatus(
[in] IN NTSTATUS Status
);
Parámetros
[in] Status
Código de estado que se va a validar.
Valor devuelto
IoIsValidIrpStatus devuelve TRUE si el parámetro status es un valor NTSTATUS con formato correcto. De lo contrario, la rutina devuelve FALSE.
Observaciones
Los desarrolladores de controladores pueden definir valores NTSTATUS personalizados para usarlos como códigos de estado para solicitudes de IRP_MJ_INTERNAL_DEVICE_CONTROL. Los controladores pueden llamar a ioIsValidIrpStatus para validar los códigos de estado de estas solicitudes. Esta rutina es útil para detectar un valor de estado de estado no inicializado o dañado en el bloque de estado de E/S de de un IRP.
IoIsValidIrpStatus detecta códigos de estado no válidos que obviamente infringen las reglas para definir valores NTSTATUS personalizados, pero es posible que no detecten códigos de estado no válidos que parecen seguir las reglas. La rutina puede devolver TRUE para un parámetro status que no es un valor de código NTSTATUS válido, pero rara vez, si es posible, devuelve FALSE para un código NTSTATUS válido.
ioIsValidIrpStatus examina los campos desev , Facilityy Code en el valor de parámetro status de para determinar si la combinación de valores de estos campos cumple las directrices publicadas. Si se establece el bit de C del parámetro status , ioIsValidIrpStatus devuelve TRUE independientemente de los demás valores de campo de Status.
Para obtener más información sobre estos campos, vea Definición de nuevos valores NTSTATUS.
Requisitos
Requisito | Valor |
---|---|
cliente mínimo admitido | Disponible a partir de Windows 8. |
de la plataforma de destino de | Universal |
encabezado de | ntddk.h (incluya Ntddk.h, Ntifs.h) |
biblioteca de | NtosKrnl.lib |
DLL de | NtosKrnl.exe |
irQL | Cualquier nivel. |