记录一下,STL和UNICODE_STRING混用,容易出现问题;
如果直接用dst.Buffer给一个wstring赋值,则会带入垃圾字符;
使用UNICODE_STRING时,必须严格遵守Length,MaximumLength都不可信。。
UNICODE_STRING src = {0};
UNICODE_STRING dst = {0};
RtlInitUnicodeString(&src, L".exe");
if(NT_SUCCESS(RtlUpcaseUnicodeString(&dst, &src, TRUE)))
{
RtlFreeUnicodeString(&dst);
}