IDebugFAEntryTags::GetTagByName 方法 (extsfns.h)

GetTagByName 方法搜索具有指定名称的标记。

语法

HRESULT GetTagByName(
  [in]  PCSTR  PluginId,
  [in]  PCSTR  TagName,
  [out] FA_TAG *Tag
);

参数

[in] PluginId

指向以 null 结尾的字符串的指针,该字符串指定分析扩展插件的标识符。 此参数可以为 NULL。

[in] TagName

指向以 null 结尾的字符串的指针,该字符串指定要搜索的名称。

[out] Tag

指向变量的指针,该变量接收 FA_TAG 枚举中的值或自定义标记的值。 如果此方法找不到具有指定名称的标记,则不会向此参数写入任何内容。

返回值

如果此方法找到具有指定名称的标记,则返回 S_OK。 否则,它将返回失败代码。

注解

DebugFailureAnalysis 对象具有 FA 条目的集合,其中每个条目都有一个标记。 DebugFailureAnalysis 对象与 DebugFailureAnalysisTags 相关联,后者包含标记属性的集合。 此外,分析引擎还有一个全局标记表。 有关详细信息,请参阅 故障分析条目、标记和数据类型

如果指定 PluginId,此方法将执行以下操作:

  • DebugFailureAnalysisTags 对象中,在标记属性集合中搜索名称与 TagName 匹配且插件 ID 与 PluginId 匹配的标记。 请注意,这会将搜索限制为由 PluginId 标识的分析扩展插件创建的自定义标记。 如果找到匹配项,则返回 Tag 输出参数中的 标记
  • 如果在 DebugFailureAnalysisTags 对象中找不到匹配项,请在全局标记表中搜索名称与 TagName 匹配的标记。 如果找到匹配的名称,请将找到的标记添加到 Tag 属性的 DebugFailureAnalysisTags 集合,并在 Tag 输出参数中返回 标记
  • 如果在全局标记表中找不到匹配项,则不向 Tag 输出参数写入任何内容,并返回失败代码。
如果从分析扩展插件调用此方法,并将 PluginId 设置为 NULL,此方法将使用当前插件的插件标识符。 然后,它的行为方式与指定非 NULL PluginId 时的行为方式相同。

要求

要求
目标平台 桌面
标头 extsfns.h

另请参阅

IDebugFAEntryTags

IDebugFailureAnalysis2

分析扩展插件的元数据文件

编写分析扩展插件以扩展 !analyze

_EFN_Analyze