Função WdmlibRtlInitUnicodeStringEx (wdmsec.h)
A função WdmlibRtlInitUnicodeStringEx inicializa uma cadeia de caracteres unicode contada.
Sintaxe
NTSTATUS WdmlibRtlInitUnicodeStringEx(
[out] PUNICODE_STRING DestinationString,
[in, optional] PCWSTR SourceString
);
Parâmetros
[out] DestinationString
Um ponteiro para a estrutura UNICODE_STRING a ser inicializada.
[in, optional] SourceString
Um ponteiro para uma cadeia de caracteres largos terminada em nulo. Essa cadeia de caracteres é usada para inicializar a cadeia de caracteres contada apontada por DestinationString.
Valor de retorno
WdmlibRtlInitUnicodeStringEx retornará STATUS_SUCCESS se bem-sucedido, caso contrário, o método poderá retornar outros valores NTSTATUS.
Observações
A rotina copia o valor do ponteiro SourceString para o membro do Buffer da estrutura de UNICODE_STRING apontado pelo DestinationString. O Length membro dessa estrutura é definido como o comprimento, em bytes, da cadeia de caracteres de origem, excluindo o nulo de terminação. O membro MaximumLength da estrutura é definido como o comprimento, em bytes, da cadeia de caracteres de origem, incluindo o nulo de terminação. Se SourceString for NULL, Length e MaximumLength serão definidos como zero.
WdmlibRtlInitUnicodeStringEx não altera a cadeia de caracteres de origem apontada por sourceString.
Nota
Se a cadeia de caracteres de origem for maior que MAX_USTRING - 1 bytes (em que MAX_USTRING = 0xfffe), WdmlibRtlInitUnicodeStringEx define o membro de Comprimento da estrutura UNICODE_STRING apontada por DestinationString para MAX_USTRING - 2, e define o membro MaximumLength dessa estrutura como MAX_USTRING. Nesse caso, os valores de Comprimento e MaximumLength distorcem o comprimento da cadeia de caracteres de origem terminada em nulo e depender da precisão desses valores é potencialmente perigoso.
Os chamadores de WdmlibRtlInitUnicodeStringEx podem estar em execução no <IRQL = DISPATCH_LEVEL se o buffer de DestinationString não for pageable. Normalmente, os chamadores são executados em IRQL = PASSIVE_LEVEL porque a maioria dos outros rtlxxxcadeia de caracteres rotinas não pode ser chamada na > PASSIVE_LEVEL IRQL.
Requisitos
Requisito | Valor |
---|---|
de cliente com suporte mínimo | Disponível a partir do Windows 2000. |
da Plataforma de Destino | Universal |
cabeçalho | wdmsec.h (include Wdmsec.h, Wdm.h, Ntddk.h, Ntifs.h) |
biblioteca | NtosKrnl.lib |
de DLL | NtosKrnl.exe |
IRQL | Consulte a seção Comentários. |