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