【问题标题】:convert a wchar_t array to PUNICODE_STRING将 wchar_t 数组转换为 PUNICODE_STRING
【发布时间】:2012-01-05 13:23:43
【问题描述】:

我有一个 const 字符串 - “testfilename.sys”,我想创建一个 @987654321@ 来保存它。
我该怎么做?

【问题讨论】:

  • 网络搜索表明 RtlInitUnicodeString 是答案
  • PUNICODE_STRING 只是微软(在我看来是不明智的)typedefing 指针的习惯,数据类型称为UNICODE_STRING

标签: c++ c windows string


【解决方案1】:

正如@David Heffernan 指出的那样,RtlInitUnicodeString 是创建 UNICODE_STRING 结构的方法。

在你的情况下:

#include <Winternl.h>

[...]

UNICODE_STRING myUnicodeStr;
RtlInitUnicodeString(&myUnicodeStr, L"testfilename.sys");

PUNICODE_STRING 就是 UNICODE_STRING*

【讨论】:

    【解决方案2】:

    wdk 中有 RTL_CONSTANT_STRING 宏,可用于在编译时创建 UNICODE_STRING。

    【讨论】:

      猜你喜欢
      • 2011-03-05
      • 2021-07-31
      • 2012-10-12
      • 2011-07-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-05-29
      相关资源
      最近更新 更多