Freigeben über


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 mit Null beendete Zeichenfolge enthält, deren Länge RtlUnalignedStringCchLengthW überprüft.

[in] cchMax

Gibt die maximale Anzahl von Zeichen an, die im Puffer zulässig sind, auf die psz verweist, einschließlich des endenden NULL-Zeichens. Dieser Wert darf NTSTRSAFE_MAX_CCH nicht überschreiten.

[out, optional] pcchLength

Wahlfrei. Wenn der Aufrufer einen Nicht-NULL- Adresszeiger bereitstellt, lädt die Funktion die Adresse mit der Länge in Zeichen der Zeichenfolge, die im Puffer enthalten ist, auf den psz verweist. Die Länge enthält nicht das endende NULL-Zeichen der Zeichenfolge.

Rückgabewert

RtlUnalignedStringCchLengthW gibt einen der folgenden NTSTATUS-Werte zurück.

Rückgabecode Beschreibung
STATUS_SUCCESS
Dieser Erfolg Status bedeutet die Zeichenfolge, 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.
STATUS_INVALID_PARAMETER
Dieser Fehler status bedeutet, dass der Wert in pszNULL-ist, cchMax größer als NTSTRSAFE_MAX_CCH ist oder psz länger als cchMaxist.
 

Informationen zum Testen von NTSTATUS-Werten finden Sie unter Verwenden von NTSTATUS-Werten.

Bemerkungen

Die RtlUnalignedStringCchLengthW--Funktion ist für Prozessorarchitekturen verfügbar, z. B. Itanium-basierte und x64-basierte, 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 RtlUnalignedStringCchLengthW-RtlStringCchLength.)

Weitere Informationen zu den sicheren Zeichenfolgenfunktionen finden Sie unter Verwenden von Funktionen für sichere Zeichenfolgen.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Verfügbar in Windows XP mit Service Pack 1 (SP1) und höheren Versionen von Windows.
Zielplattform- Desktop
Header- ntstrsafe.h (include Ntstrsafe.h)
Library Ntstrsafe.lib
IRQL- Wenn Zeichenfolgen, die bearbeitet werden, immer im Arbeitsspeicher vorhanden sind, andernfalls PASSIVE_LEVEL

Siehe auch

RtlStringCchLength