【问题标题】:What does it mean when a Windows Kernel structure is Opaque?Windows 内核结构不透明是什么意思?
【发布时间】:2022-01-02 10:13:55
【问题描述】:

这是否意味着没有传统的(合法的)方法可以访问不透明结构的成员?

【问题讨论】:

    标签: windows struct kernel


    【解决方案1】:

    这只是意味着struct 成员没有文档或可用的头文件定义。根据您对“合法”的定义,可能有也可能没有访问成员的方法。

    在技术方面,如果您知道地址和成员是什么,您就可以创建自己的结构。对 Windows 的未记录部分执行此操作并不少见。这是否是一个好主意是另一个问题。

    Windows 内核中使用的某些结构在跨版本(甚至跨服务包和更新)时不稳定。如果您选择访问 Windows 团队认为禁止访问的内容,这只是您必须处理的事情。这也意味着你应该问问自己是否真的需要访问这个结构。对于内核模式下的任何东西尤其如此。

    也有一些事情开始时完全不透明,但随着时间的推移,它的一些成员已经记录在案(出于法律或其他原因)。在those cases 中,您会看到一些成员只有“Reserved1234”之类的名称并定义为指针或字节,而完整记录的成员具有有用的名称和正确的类型。

    【讨论】:

      猜你喜欢
      • 2013-05-06
      • 1970-01-01
      • 2012-02-27
      • 2015-05-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-03-29
      相关资源
      最近更新 更多