Compartilhar via


Função RtlUnalignedStringCbLengthW (ntstrsafe.h)

A função RtlUnalignedStringCbLengthW é uma versão da função RtlStringCbLength que aceita um ponteiro não alinhado para uma cadeia de caracteres Unicode.

Sintaxe

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

Parâmetros

[in] psz

Fornece um ponteiro para um buffer que contém uma cadeia de caracteres terminada em nulo cujo comprimento RtlUnalignedStringCbLengthW marcar.

[in] cbMax

Fornece o número máximo de bytes permitidos no buffer para o qual psz aponta, incluindo o caractere NULL de terminação. Esse valor não pode exceder NTSTRSAFE_MAX_CCH * sizeof(WCHAR).

[out, optional] pcbLength

Opcional. Se o chamador fornecer um ponteiro de endereço não NULL , a função carregará o endereço com o comprimento, em bytes, da cadeia de caracteres contida no buffer para o qual psz aponta. O comprimento não inclui o caractere NULL de terminação da cadeia de caracteres.

Retornar valor

RtlUnalignedStringCbLengthW retorna um dos seguintes valores NTSTATUS.

Código de retorno Descrição
STATUS_SUCCESS
Esse êxito status significa que a cadeia de caracteres especificada pelo parâmetro psz não era NULL e o comprimento da cadeia de caracteres (incluindo o caractere NULL de terminação) era menor ou igual a bytes cbMax.
STATUS_INVALID_PARAMETER
Esse erro status significa que o valor em psz é NULL, cbMax é maior que NTSTRSAFE_MAX_CCH * sizeof(WCHAR ou psz é maior que cbMax.
 

Para obter informações sobre como testar valores NTSTATUS, consulte Usando valores NTSTATUS.

Comentários

A função RtlUnalignedStringCbLengthW está disponível para arquiteturas de processador, como baseadas em Itanium e baseadas em x64, que causam exceções de alinhamento quando o software tenta acessar dados não alinhados. Nesses processadores, você pode usar RtlUnalignedStringCbLengthW em vez da função RtlStringCbLength para evitar exceções de alinhamento. (Para processadores que não causam exceções de alinhamento, RtlUnalignedStringCbLengthW é equivalente a RtlStringCbLength.)

Para obter mais informações sobre as funções de cadeia de caracteres seguras, consulte Usando funções de cadeia de caracteres seguras.

Requisitos

Requisito Valor
Cliente mínimo com suporte Disponível no Windows XP com Service Pack 1 (SP1) e versões posteriores do Windows.
Plataforma de Destino Área de Trabalho
Cabeçalho ntstrsafe.h (inclua Ntstrsafe.h)
Biblioteca Ntstrsafe.lib
IRQL Qualquer se as cadeias de caracteres que estão sendo manipuladas estiverem sempre residentes na memória, caso contrário, PASSIVE_LEVEL

Confira também

RtlStringCbLength