InitPropVariantFromPropVariantVectorElem 関数 (propvarutil.h)
指定した PROPVARIANT ベクター要素に基づいて PROPVARIANT 構造体を 初期化します。
構文
PSSTDAPI InitPropVariantFromPropVariantVectorElem(
[in] REFPROPVARIANT propvarIn,
[in] ULONG iElem,
[out] PROPVARIANT *ppropvar
);
パラメーター
[in] propvarIn
型: REFPROPVARIANT
ソース PROPVARIANT 構造体。
[in] iElem
種類: ULONG
ソース PROPVARIANT 構造体要素のインデックス。
[out] ppropvar
型: PROPVARIANT*
この関数が戻るとき、 には初期化された PROPVARIANT 構造体が 含まれます。
戻り値
種類: HRESULT
この関数が成功すると、 S_OKが返されます。 そうでない場合は、HRESULT エラー コードを返します。
注釈
このヘルパー関数は、次の型の PROPVARIANT 構造体に対して機能します。
- VT_LPWSTR
- VT_BSTR
- VT_BOOL
- VT_I2
- VT_I4
- VT_I8
- VT_U12
- VT_U14
- VT_U18
- VT_FILETIME
- VT_VECTOR |(VT_LPWSTR、VT_BSTR、VT_BOOL、VT_I2、VT_I4、VT_I8、VT_U12、VT_U14、VT_U18、VT_FILETIMEのいずれか)
- VT_ARRAY |(VT_BSTR、VT_BOOL、VT_I2、VT_I4、VT_I8、VT_U12、VT_U14、VT_U18のいずれか)
この関数は、ソース PROPVARIANT 構造体から 1 つの値を抽出し、その値を使用して出力 PROPVARIANT 構造体を初期化します。 呼び出し元のアプリケーションは PropVariantClear を使用して、ppropvar によって参照される PROPVARIANT が不要になったときに解放する必要があります。
ソース PROPVARIANT がベクターまたは配列の場合、 iElem はベクターまたは配列内の要素数より小さくする必要があります。
ソース PROPVARIANT に 1 つの値がある場合、 iElem は 0 である必要があります。
ソース PROPVARIANT が空の場合、この関数は常にエラー コードを返します。
PropVariantGetElementCount を使用して、ベクターまたは配列内の要素の数を取得できます。
例
大規模なプログラムの一部として含める次のコード例は、反復ステートメント で InitPropVariantFromPropVariantVectorElem を使用して PROPVARIANT の値にアクセスする方法を示しています。
// PROPVARIANT propvar;
// Assume propvar is initialized and valid.
UINT cElem = PropVariantGetElementCount(propvar);
HRESULT hr = <mark type="const">S_OK</mark>;
for (UINT iElem = 0; SUCCEEDED(hr) && iElem < cElem; iElem ++)
{
PROPVARIANT propvarElem = {0};
hr = InitPropVariantFromPropVariantVectorElem(propvar, iElem, &propvarElem);
if (SUCCEEDED(hr))
{
// propvarElem is now valid.
PropVariantClear(&propvarElem);
}
}
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | WINDOWS XP と SP2、Windows Vista [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows Server 2003 SP1 [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | propvarutil.h |
Library | Propsys.lib |
[DLL] | Propsys.dll (バージョン 6.0 以降) |
再頒布可能パッケージ | Windows デスクトップ検索 (WDS) 3.0 |