Condividi tramite


Funzione IoIsValidIrpStatus (ntddk.h)

La routine IoIsValidIrpStatus convalida il valore del codice di stato NTSTATUS specificato.

Sintassi

LOGICAL IoIsValidIrpStatus(
  [in] IN NTSTATUS Status
);

Parametri

[in] Status

Codice di stato da convalidare.

Valore restituito

IoIsValidIrpStatus restituisce TRUE se il parametro Status è un valore NTSTATUS ben formato. In caso contrario, la routine restituisce FALSE.

Commenti

Gli sviluppatori di driver possono definire valori NTSTATUS personalizzati da usare come codici di stato per le richieste di IRP_MJ_INTERNAL_DEVICE_CONTROL . I driver possono chiamare IoIsValidIrpStatus per convalidare i codici di stato per queste richieste. Questa routine è utile per rilevare un valore stato non inizializzato o danneggiato nel blocco di stato I/O di un'istanza di IRP .

IoIsValidIrpStatus rileva codici di stato non validi che violano ovviamente le regole per la definizione di valori NTSTATUS personalizzati, ma potrebbero non rilevare codici di stato non validi che sembrano seguire le regole. La routine potrebbe restituire TRUE per un parametro Status che non è un valore di codice NTSTATUS valido, ma raramente, se mai, restituisce FALSE per un codice NTSTATUS valido.

IoIsValidIrpStatus esamina i campi Sev, Facility e Code nel valore del parametro Status per determinare se la combinazione di valori in questi campi è conforme alle linee guida pubblicate. Se il bit C del parametro Status è impostato, IoIsValidIrpStatus restituisce TRUE indipendentemente dagli altri valori di campo in Stato.

Per altre informazioni su questi campi, vedere Definizione di nuovi valori NTSTATUS.

Requisiti

Requisito Valore
Client minimo supportato Disponibile a partire da Windows 8.
Piattaforma di destinazione Universale
Intestazione ntddk.h (include Ntddk.h, Ntifs.h)
Libreria NtosKrnl.lib
DLL NtosKrnl.exe
IRQL Qualsiasi livello.

Vedi anche

IRP_MJ_INTERNAL_DEVICE_CONTROL