psGetNameFromPropertyKey 函数 (propsys.h)

根据属性的 PROPERTYKEY 检索属性的规范名称。

语法

PSSTDAPI PSGetNameFromPropertyKey(
  [in]  REFPROPERTYKEY propkey,
  [out] PWSTR          *ppszCanonicalName
);

参数

[in] propkey

类型: REFPROPERTYKEY

对标识所请求属性的 PROPERTYKEY 结构的引用。

[out] ppszCanonicalName

类型: PWSTR*

当此函数返回时,包含指向属性名称的指针,作为以 null 结尾的 Unicode 字符串。

返回值

类型: HRESULT

返回以下值之一。

返回代码 说明
S_OK
获取属性的规范名称。
TYPE_E_ELEMENTNOTFOUND
指示架构子系统缓存中不存在 PROPERTYKEY

注解

检索指定属性键的规范名称。 与属性键一样,规范名称唯一标识属性。 例如, System.Keywords 是 的 PKEY_Keywords规范名称。 此函数仅对注册为属性架构的一部分的属性成功。

调用应用程序负责在不再需要时使用 CoTaskMemFree 释放 ppszCanonicalName 引用的字符串。

示例

以下示例将作为更大的程序的一部分包含,演示如何使用 PSGetNameFromPropertyKey 从序列化的属性存储中读取值。

PWSTR pszName;

HRESULT hr = PSGetNameFromPropertyKey(PKEY_Keywords, &pszName);

if (SUCCEEDED(hr))
{
    // pszName now contains L"System.Keywords"
 
    CoTaskMemFree(pszName);
}

要求

要求
最低受支持的客户端 Windows XP SP2、Windows Vista [仅限桌面应用]
最低受支持的服务器 Windows Server 2003 SP1 [仅限桌面应用]
目标平台 Windows
标头 propsys.h
Library Propsys.lib
DLL Propsys.dll (6.0 或更高版本)
可再发行组件 Windows 桌面搜索 (WDS) 3.0

另请参阅

IPropertyDescription::GetCanonicalName

PSGetPropertyDescriptionByName

PSGetPropertyKeyFromName

PSStringFromPropertyKey