Condividi tramite


Funzione RtlUnalignedStringCchLengthW (ntstrsafe.h)

La funzione RtlUnalignedStringCchLengthW è una versione della funzione RtlStringCchLength che accetta un puntatore non autorizzato a una stringa di caratteri Unicode.

Sintassi

NTSTRSAFEDDI RtlUnalignedStringCchLengthW(
  [in]            STRSAFE_PCUNZWCH psz,
  [in]            size_t           cchMax,
  [out, optional] size_t           *pcchLength
);

Parametri

[in] psz

Fornisce un puntatore a un buffer contenente una stringa con terminazione null la cui lunghezza RtlUnalignedStringCchLengthW verificherà.

[in] cchMax

Specifica il numero massimo di caratteri consentiti nel buffer a cui psz punta, incluso il carattere NULL di terminazione. Questo valore non può superare NTSTRSAFE_MAX_CCH.

[out, optional] pcchLength

facoltativo. Se il chiamante fornisce un puntatore di indirizzi non NULL , la funzione carica l'indirizzo con la lunghezza, in caratteri, della stringa contenuta nel buffer a cui punta psz . La lunghezza non include il carattere NULL di terminazione della stringa.

Valore restituito

RtlUnalignedStringCchLengthW restituisce uno dei valori NTSTATUS seguenti.

Codice restituito Descrizione
STATUS_SUCCESS
Questo stato di esito positivo indica che la stringa che il parametro psz non era NULL e la lunghezza della stringa (incluso il carattere NULL di terminazione) era minore o uguale a caratteri cchMax .
STATUS_INVALID_PARAMETER
Questo stato di errore indica che il valore in psz è NULL, cchMax è maggiore di NTSTRSAFE_MAX_CCH o psz è più lungo di cchMax.
 

Per informazioni su come testare i valori NTSTATUS, vedere Uso di valori NTSTATUS.

Commenti

La funzione RtlUnalignedStringCchLengthW è disponibile per le architetture del processore, ad esempio Basata su Itanium e basata su x64, che causano eccezioni di allineamento quando il software tenta di accedere ai dati non idonei. In tali processori è possibile usare RtlUnalignedStringCchLengthW anziché RtlStringCchLength per evitare eccezioni di allineamento. Per i processori che non causano eccezioni di allineamento, RtlUnalignedStringCchLengthW equivale a RtlStringCchLength.

Per altre informazioni sulle funzioni di stringa sicura, vedere Uso di funzioni stringhe sicure.

Requisiti

Requisito Valore
Client minimo supportato Disponibile in Windows XP con Service Pack 1 (SP1) e versioni successive di Windows.
Piattaforma di destinazione Desktop
Intestazione ntstrsafe.h (include Ntstrsafe.h)
Libreria Ntstrsafe.lib
IRQL Qualsiasi se le stringhe modificate sono sempre residenti in memoria, in caso contrario PASSIVE_LEVEL

Vedi anche

RtlStringCchLength