Compartir a través de


Función RtlUnalignedStringCbLengthW (ntstrsafe.h)

La función rtlUnalignedStringCbLengthW es una versión de la función de RtlStringCbLength que acepta un puntero no asignado a una cadena de caracteres Unicode.

Sintaxis

NTSTRSAFEDDI RtlUnalignedStringCbLengthW(
  [in]            STRSAFE_PCUNZWCH psz,
  [in]            size_t           cbMax,
  [out, optional] size_t           *pcbLength
);

Parámetros

[in] psz

Proporciona un puntero a un búfer que contiene una cadena terminada en null cuya longitud RtlUnalignedStringCbLengthW comprobará.

[in] cbMax

Proporciona el número máximo de bytes permitidos en el búfer al que psz apunta, incluido el carácter NULL de terminación. Este valor no puede superar NTSTRSAFE_MAX_CCH * sizeof(WCHAR).

[out, optional] pcbLength

Opcional. Si el autor de la llamada proporciona un puntero de dirección que no esNULL, la función carga la dirección con la longitud, en bytes, de la cadena contenida en el búfer al que psz apunta. La longitud no incluye el carácter NULL de terminación de la cadena.

Valor devuelto

rtlUnalignedStringCbLengthW devuelve uno de los siguientes valores NTSTATUS.

Código devuelto Descripción
STATUS_SUCCESS
Este estado correcto significa la cadena que el parámetro psz psz especificado no NULLy la longitud de la cadena (incluido el carácter NULL de terminación) era menor o igual que cbMax bytes.
STATUS_INVALID_PARAMETER
Este estado de error significa que el valor de psz es null, cbMax es mayor que NTSTRSAFE_MAX_CCH * sizeof(WCHAR o psz es mayor que cbMax.
 

Para obtener información sobre cómo probar valores NTSTATUS, vea Using NTSTATUS Values.

Observaciones

La función RtlUnalignedStringCbLengthW está disponible para las arquitecturas de procesador, como las basadas en Itanium y x64, que provocan excepciones de alineación cuando el software intenta acceder a datos no asignados. En esos procesadores, puede usar función RtlUnalignedStringCbLengthW en lugar de la función de rtlStringCbLength para evitar excepciones de alineación. (En el caso de los procesadores que no provocan excepciones de alineación, rtlUnalignedStringCbLengthW es equivalente a RtlStringCbLength).

Para obtener más información sobre las funciones de cadena segura, vea Using Safe String Functions.

Requisitos

Requisito Valor
cliente mínimo admitido Disponible en Windows XP con Service Pack 1 (SP1) y versiones posteriores de Windows.
de la plataforma de destino de Escritorio
encabezado de ntstrsafe.h (incluya Ntstrsafe.h)
biblioteca de Ntstrsafe.lib
irQL Si las cadenas que se manipulan siempre residen en la memoria, de lo contrario, PASSIVE_LEVEL

Consulte también

RtlStringCbLength