RtlStringCchLengthW-Funktion (ntstrsafe.h)
Die Funktionen RtlStringCchLengthW und RtlStringCchLengthA bestimmen die Länge einer angegebenen Zeichenfolge in Zeichen.
Syntax
NTSTRSAFEDDI RtlStringCchLengthW(
[in] STRSAFE_PCNZWCH psz,
[in] size_t cchMax,
size_t *pcchLength
);
Parameter
[in] psz
Ein Zeiger auf einen Puffer, der eine NULL-endende Zeichenfolge enthält, deren Länge überprüft wird.
[in] cchMax
Die maximale Anzahl von Zeichen, 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.
pcchLength
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. Die Länge enthält nicht das abschließende NULL-Zeichen der Zeichenfolge.
Rückgabewert
Die Funktion gibt einen der NTSTATUS-Werte zurück, die in der folgenden Tabelle aufgeführt sind. Informationen zum Testen von NTSTATUS-Werten finden Sie unter Verwenden von NTSTATUS-Werten.
Rückgabecode | Beschreibung |
---|---|
|
Dieser Erfolg status bedeutet, dass die Zeichenfolge bei psz nicht NULL war und die Länge der Zeichenfolge (einschließlich des endenden NULL-Zeichens) kleiner oder gleich cchMax-Zeichen ist. |
|
Dieser Fehler status bedeutet, dass der Wert in pszNULL ist, cchMax größer als NTSTRSAFE_MAX_CCH oder psz länger als cchMax ist. |
Hinweise
RtlStringCchLengthW und RtlStringCchLengthA sollten anstelle von strlen verwendet werden. Sie werden verwendet, um sicherzustellen, dass eine Zeichenfolge nicht größer als eine angegebene Länge in Zeichen ist. Wenn diese Bedingung erfüllt ist, geben RtlStringCchLengthW und RtlStringCchLengthA die aktuelle Länge der Zeichenfolge in Zeichen zurück, ohne das abschließende NULL-Zeichen.
Verwenden Sie RtlStringCchLengthW zum Verarbeiten von Unicode-Zeichenfolgen und RtlStringCchLengthA zum Verarbeiten von ANSI-Zeichenfolgen. Das verwendete Formular hängt von Ihren Daten ab, wie in der folgenden Tabelle gezeigt.
String-Datentyp | Zeichenfolgenliteral | Funktion |
---|---|---|
WCHAR | L"string" | RtlStringCchLengthW |
char | „String“ | RtlStringCchLengthA |
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 |