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