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 |
---|---|
|
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. |
|
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 |