Compartir a través de


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.

Consulte también

IRP_MJ_INTERNAL_DEVICE_CONTROL