RtlUnalignedStringCchLengthW-Funktion (ntstrsafe.h)
Die RtlUnalignedStringCchLengthW-Funktion ist eine Version der RtlStringCchLength-Funktion , die einen nicht ausgerichteten Zeiger auf eine Zeichenfolge von Unicode-Zeichen akzeptiert.
Syntax
NTSTRSAFEDDI RtlUnalignedStringCchLengthW(
[in] STRSAFE_PCUNZWCH psz,
[in] size_t cchMax,
[out, optional] size_t *pcchLength
);
Parameter
[in] psz
Stellt einen Zeiger auf einen Puffer bereit, der eine NULL-endende Zeichenfolge enthält, deren Länge RtlUnalignedStringCchLengthW überprüft.
[in] cchMax
Stellt die maximale Anzahl von Zeichen bereit, die im Puffer zulässig sind, auf den psz verweist, einschließlich des abschließenden NULL-Zeichens. Dieser Wert darf NTSTRSAFE_MAX_CCH nicht überschreiten.
[out, optional] pcchLength
Optional. Wenn der Aufrufer einen Adresszeiger ungleich NULL bereitstellt, lädt die Funktion die Adresse mit der Länge in Zeichen der Zeichenfolge, die im Puffer enthalten ist, auf den psz zeigt. Die Länge enthält nicht das abschließende NULL-Zeichen der Zeichenfolge.
Rückgabewert
RtlUnalignedStringCchLengthW gibt einen der folgenden NTSTATUS-Werte zurück.
Rückgabecode | Beschreibung |
---|---|
|
Dieser Erfolg status bedeutet, dass der psz-Parameter nicht NULL war und die Länge der Zeichenfolge (einschließlich des endenden NULL-Zeichens) kleiner oder gleich cchMax-Zeichen war. |
|
Dieser Fehler status bedeutet, dass der Wert in pszNULL ist, cchMax größer als NTSTRSAFE_MAX_CCH oder psz länger als cchMax ist. |
Informationen zum Testen von NTSTATUS-Werten finden Sie unter Verwenden von NTSTATUS-Werten.
Hinweise
Die RtlUnalignedStringCchLengthW-Funktion ist für Prozessorarchitekturen wie Itanium- und x64-basiert verfügbar, die Ausrichtungsausnahmen verursachen, wenn Software versucht, auf nicht ausgerichtete Daten zuzugreifen. Auf diesen Prozessoren können Sie RtlUnalignedStringCchLengthW anstelle von RtlStringCchLength verwenden , um Ausrichtungsausnahmen zu vermeiden. (Für Prozessoren, die keine Ausrichtungsausnahmen verursachen, entspricht RtlUnalignedStringCchLengthWrtlStringCchLength.)
Weitere Informationen zu den sicheren Zeichenfolgenfunktionen finden Sie unter Verwenden sicherer Zeichenfolgenfunktionen.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Verfügbar in Windows XP mit Service Pack 1 (SP1) und höheren Versionen von Windows. |
Zielplattform | Desktop |
Kopfzeile | ntstrsafe.h (einschließen von Ntstrsafe.h) |
Bibliothek | Ntstrsafe.lib |
IRQL | Alle, wenn Zeichenfolgen, die bearbeitet werden, immer im Arbeitsspeicher gespeichert sind, andernfalls PASSIVE_LEVEL |