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. |