WdmlibRtlInitUnicodeStringEx 함수(wdmsec.h)
WdmlibRtlInitUnicodeStringEx 함수는 계산된 유니코드 문자 문자열을 초기화합니다.
통사론
NTSTATUS WdmlibRtlInitUnicodeStringEx(
[out] PUNICODE_STRING DestinationString,
[in, optional] PCWSTR SourceString
);
매개 변수
[out] DestinationString
초기화할 UNICODE_STRING 구조체에 대한 포인터입니다.
[in, optional] SourceString
null로 끝나는 와이드 문자열에 대한 포인터입니다. 이 문자열은 DestinationString가리키는 계산된 문자열을 초기화하는 데 사용됩니다.
반환 값
WdmlibRtlInitUnicodeStringEx 성공하면 STATUS_SUCCESS 반환하고, 그렇지 않으면 메서드가 다른 NTSTATUS 값을 반환할 수 있습니다.
발언
루틴은 SourceString 포인터 값을 DestinationString가리키는 UNICODE_STRING 구조의 Buffer 멤버에 복사합니다. 이 구조체의 Length 멤버는 종료 null을 제외하고 소스 문자열의 길이(바이트)로 설정됩니다. 구조체의 MaximumLength 멤버는 종료 null을 포함하여 소스 문자열의 길이(바이트)로 설정됩니다. SourceString NULL 경우 Length 및 MaximumLength 모두 0으로 설정됩니다.
WdmlibRtlInitUnicodeStringExSourceString가리키는 원본 문자열을 변경하지 않습니다.
메모
원본 문자열이 MAX_USTRING - 1바이트(여기서 MAX_USTRING = 0xfffe)보다 긴 경우 WdmlibRtlInitUnicodeStringExDestinationString 가리키는 UNICODE_STRING 구조의 Length 멤버를 MAX_USTRING -2로 설정합니다. 이 구조체의 MaximumLength 멤버를 MAX_USTRING 설정합니다. 이 경우 Length 및 MaximumLength 값은 null로 종료된 소스 문자열의 길이를 잘못 표시하며 이러한 값의 정확도에 의존하는 것은 위험할 수 있습니다.
DestinationString 버퍼를 사용할 수 없는 경우 WdmlibRtlInitUnicodeStringEx 호출자는 IRQL <= DISPATCH_LEVEL 실행할 수 있습니다. 대부분의 다른 RtlXxxString 루틴은 IRQL > PASSIVE_LEVEL 호출할 수 없으므로 일반적으로 호출자는 IRQL = PASSIVE_LEVEL 실행됩니다.
요구 사항
요구 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows 2000부터 사용할 수 있습니다. |
대상 플랫폼 | 보편적 |
헤더 | wdmsec.h(Wdmsec.h, Wdm.h, Ntddk.h, Ntifs.h 포함) |
라이브러리 | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | 설명 섹션을 참조하세요. |
참고 항목
- RtlUnicodeStringInit
- rtlUnicodeStringInitEx
- UNICODE_STRING