PEP_SOC_SUBSYSTEM_METADATA 结构 (pep_x.h)

PEP_SOC_SUBSYSTEM_METADATA 结构包含键值对,这些键值对包含芯片 (SoC) 子系统上的系统的元数据。 它用于发送到平台扩展插件 ( PEP) 的PEP_DPM_QUERY_SOC_SUBSYSTEM_METADATA通知的上下文中。

语法

typedef struct _PEP_SOC_SUBSYSTEM_METADATA {
  [in/out] UNICODE_STRING Key;
  [in/out] UNICODE_STRING Value;
} PEP_SOC_SUBSYSTEM_METADATA, *PPEP_SOC_SUBSYSTEM_METADATA;

成员

[in/out] Key

PEP 用于写入元数据字符串对的关键部分的缓冲区。 在此子系统报告的所有 值中必须是唯一的。

在进入通知回调例程之前,内核将:

  • Key.Buffer 预先分配 64 个 WCHAR[]
  • 零缓冲区
  • Key.MaximumLength 设置为缓冲区的大小(以字节为单位),以及
  • 设置 Key.Length = 0
在退出回调例程之前,PEP 必须将以 null 结尾的字符串复制到 Key.Buffer 中,并使用大小为 (WCHAR 的字节计数更新 Key.Length) 复制的 UNICODE 字符数,不包括终止UNICODE_NULL

PEP 必须使用 Key.Buffer 中地址指向的已分配内存来提供密钥。 由于此内存是预先分配的,因此无法更改其大小。 如有必要,PEP 负责截断键字符串,使其不超过 Key.MaximumLength (包括终止 UNICODE_NULL 字符) 中指定的长度。

[in/out] Value

PEP 的缓冲区,用于写入元数据字符串对的值部分。

在进入通知回调例程之前,内核将:

  • Value.Buffer 预先分配 64 个 WCHAR[]
  • 零缓冲区
  • Value.MaximumLength 设置为缓冲区的大小(以字节为单位),以及
  • 设置 Value.Length = 0
在退出回调例程之前,PEP 必须将以 null 结尾的字符串复制到 Value.Buffer 中 ,并使用字节计数更新 Value.Length该字节计数的大小为 (WCHAR) 复制的 UNICODE 字符数,不包括终止 UNICODE_NULL

PEP 必须使用 Value.Buffer 中地址指向的已分配内存来提供元数据值。 由于此内存是预先分配的,因此无法更改其大小。 如有必要,PEP 负责截断值字符串,使其不超过 Value.MaximumLength (包括终止 UNICODE_NULL 字符) 中指定的长度。

要求

要求
最低受支持的客户端 从 Windows 10 开始支持。
标头 pep_x.h (包括 Pep_x.h)

另请参阅

PEP_DPM_QUERY_SOC_SUBSYSTEM_METADATA

PEP_QUERY_SOC_SUBSYSTEM_METADATA