UNICODE_STRING

UNICODE_STRING简介UNICODE_STRING结构是通过使用各种本地安全认证(LSA)的功能来指定一个 Unicode 字元串 。结构体原型typedef struct _LSA_UNICODE_STRING {USHORT Length;USHORT MaximumLength;PWSTR Buffer;} LSA_UNICODE_STRING, *PLSA_UNICODE_STRING, UNICODE_STRING, *PUNICODE_STRING;结构成员Length指定字元串的长度 , 以位元组为单位指出的Buffer字元串的长度 。如果是以NULL字元结尾(即'\0') , 则不包括NULL字元的长度 。MaximumLengthBuffer字元串的总长度 。MaximumLength和Length的关係可以参照:char c[10] = "123";sizeof(c);和strlen(c);得出的结果 。Buffer一个宽字元的字元串的指针 。注意 , 通过各种LSA函式返回的字元串可能不是以NULL结尾 。使用範例UNICODE_STRING str = RTL_CONSTANT_STRING(L"Hello");KdPrint(("Buffer:%ws\nMaxinumLength:%d\nLength:%d", str.Buffer, str.MaximumLength, str.Length));