Função RtlUnalignedStringCbLengthW (ntstrsafe.h)
A função rtlUnalignedStringCbLengthW é uma versão da função rtlStringCbLength que aceita um ponteiro não assinado 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 verificará.
[in] cbMax
Fornece o número máximo de bytes que são permitidos no buffer que psz aponta, incluindo o caractere NULL de encerramento. Esse valor não pode exceder NTSTRSAFE_MAX_CCH * sizeof (WCHAR).
[out, optional] pcbLength
Opcional. Se o chamador fornecer um ponteiro de endereço NULLnão, a função carregará o endereço com o comprimento, em bytes, da cadeia de caracteres contida no buffer que psz aponta. O comprimento não inclui o caractere NULL de terminação da cadeia de caracteres.
Valor de retorno
RtlUnalignedStringCbLengthW retorna um dos seguintes valores NTSTATUS.
Código de retorno | Descrição |
---|---|
|
Esse êxito status significa que a cadeia de caracteres que o parâmetro psz especificado não foi NULL e o comprimento da cadeia de caracteres (incluindo o caractere NULL de terminação) era menor ou igual a cbMax bytes. |
|
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.
Observações
A função rtlUnalignedStringCbLengthW está disponível para arquiteturas de processador, como baseada em Itanium e baseada em x64, que causam exceções de alinhamento quando o software tenta acessar dados não atribuídos. 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 |
---|---|
de cliente com suporte mínimo | Disponível no Windows XP com Service Pack 1 (SP1) e versões posteriores do Windows. |
da Plataforma de Destino | Área de trabalho |
cabeçalho | ntstrsafe.h (inclua Ntstrsafe.h) |
biblioteca | Ntstrsafe.lib |
IRQL | Se as cadeias de caracteres que estão sendo manipuladas estiverem sempre residentes na memória, caso contrário, PASSIVE_LEVEL |