Función RtlUnalignedStringCchLengthW (ntstrsafe.h)
La función RtlUnalignedStringCchLengthW es una versión de la función RtlStringCchLength que acepta un puntero no asignado a una cadena de caracteres Unicode.
Sintaxis
NTSTRSAFEDDI RtlUnalignedStringCchLengthW(
[in] STRSAFE_PCUNZWCH psz,
[in] size_t cchMax,
[out, optional] size_t *pcchLength
);
Parámetros
[in] psz
Proporciona un puntero a un búfer que contiene una cadena terminada en null cuya longitud RtlUnalignedStringCchLengthW comprobará.
[in] cchMax
Proporciona el número máximo de caracteres permitidos en el búfer al que apunta psz , incluido el carácter NULL de terminación. Este valor no puede superar NTSTRSAFE_MAX_CCH.
[out, optional] pcchLength
Opcional. Si el autor de la llamada proporciona un puntero de dirección distinto de NULL , la función carga la dirección con la longitud, en caracteres, de la cadena contenida en el búfer al que apunta psz . La longitud no incluye el carácter NULL de terminación de la cadena.
Valor devuelto
RtlUnalignedStringCchLengthW devuelve uno de los siguientes valores NTSTATUS.
Código devuelto | Descripción |
---|---|
|
Este estado correcto significa que la cadena que el parámetro psz no era NULL y la longitud de la cadena (incluido el carácter NULL de terminación) era menor o igual que los caracteres cchMax . |
|
Este estado de error significa que el valor de psz es NULL, cchMax es mayor que NTSTRSAFE_MAX_CCH, o psz es mayor que cchMax. |
Para obtener información sobre cómo probar valores NTSTATUS, vea Uso de valores NTSTATUS.
Comentarios
La función RtlUnalignedStringCchLengthW está disponible para arquitecturas de procesador, como basadas en Itanium y basadas en x64, que provocan excepciones de alineación cuando el software intenta acceder a datos no asignados. En esos procesadores, puede usar RtlUnalignedStringCchLengthW en lugar de RtlStringCchLength para evitar excepciones de alineación. (Para los procesadores que no provocan excepciones de alineación, RtlUnalignedStringCchLengthW es equivalente a RtlStringCchLength).
Para obtener más información sobre las funciones de cadena segura, consulte Uso de funciones de cadena segura.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Disponible en Windows XP con Service Pack 1 (SP1) y versiones posteriores de Windows. |
Plataforma de destino | Escritorio |
Encabezado | ntstrsafe.h (incluya Ntstrsafe.h) |
Library | Ntstrsafe.lib |
IRQL | Si las cadenas que se manipulan siempre residen en la memoria, de lo contrario, PASSIVE_LEVEL |