RtlUnalignedStringCbLengthW-Funktion (ntstrsafe.h)
Die RtlUnalignedStringCbLengthW-Funktion ist eine Version der RtlStringCbLength-Funktion , die einen nicht ausgerichteten Zeiger auf eine Zeichenfolge von Unicode-Zeichen akzeptiert.
Syntax
NTSTRSAFEDDI RtlUnalignedStringCbLengthW(
[in] STRSAFE_PCUNZWCH psz,
[in] size_t cbMax,
[out, optional] size_t *pcbLength
);
Parameter
[in] psz
Stellt einen Zeiger auf einen Puffer bereit, der eine NULL-endende Zeichenfolge enthält, deren Länge RtlUnalignedStringCbLengthW überprüft.
[in] cbMax
Gibt die maximale Anzahl von Bytes an, die im Puffer zulässig sind, auf den psz zeigt, einschließlich des abschließenden NULL-Zeichens. Dieser Wert darf NTSTRSAFE_MAX_CCH * sizeof(WCHAR) nicht überschreiten.
[out, optional] pcbLength
Optional. Wenn der Aufrufer einen Adresszeiger ungleich NULL bereitstellt, lädt die Funktion die Adresse mit der Länge in Bytes 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
RtlUnalignedStringCbLengthW gibt einen der folgenden NTSTATUS-Werte zurück.
Rückgabecode | Beschreibung |
---|---|
|
Diese erfolgreiche status bedeutet, dass die Zeichenfolge, dass der angegebene psz-Parameter nicht NULL war und die Länge der Zeichenfolge (einschließlich des abschließenden NULL-Zeichens) kleiner oder gleich cbMax-Bytes war. |
|
Dieser Fehler status bedeutet, dass der Wert in pszNULL ist, cbMax größer als NTSTRSAFE_MAX_CCH * sizeof(WCHAR) oder psz länger als cbMax ist. |
Informationen zum Testen von NTSTATUS-Werten finden Sie unter Verwenden von NTSTATUS-Werten.
Hinweise
Die RtlUnalignedStringCbLengthW-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 RtlUnalignedStringCbLengthW anstelle der RtlStringCbLength-Funktion verwenden, um Ausrichtungsausnahmen zu vermeiden. (Für Prozessoren, die keine Ausrichtungsausnahmen verursachen, entspricht RtlUnalignedStringCbLengthWrtlStringCbLength.)
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 |