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,并使用 sizeof(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,其字节计数 sizeof(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