IPortableDeviceValues インターフェイス

IPortableDeviceValues インターフェイスは、PROPERTYKEY/PROPVARIANT ペアのコレクションを保持します。 コレクション内の値は、同じ VARTYPE である必要はありません。

値はキーと値のペアとして格納されます。各キーはコレクション内で一意である必要があります。 クライアントは、 PROPERTYKEY または 0 から始まるインデックスでアイテムを検索できます。 データ値は PROPVARIANT 構造体として格納されます。 ジェネリック メソッド SetValueGetValue を使用して任意の型の値を追加または取得したり、追加されたデータの種類に固有のメソッドを使用して項目を追加したりできます。

Get... メソッドでは、呼び出し元が取得した値を適切に解放する必要があります。 Set... メソッドは、値をコレクションにコピーします。

IPortableDeviceValues インターフェイスが解放されると、Clear が呼び出され、すべてのメンバーに割り当てられたメモリが適切に解放されます。

このインターフェイスは、メソッドから取得することも、新しいオブジェクトが必要な場合は、CLSID_PortableDeviceValuesを使用して CoCreate を呼び出すこともできます。

メンバー

IPortableDeviceValues インターフェイスは、IUnknown インターフェイスから継承されます。 IPortableDeviceValues には、 次の種類のメンバーもあります。

メソッド

IPortableDeviceValues インターフェイスには、これらのメソッドがあります。

メソッド 説明
クリア コレクションからすべての項目を削除します。
CopyValuesFromPropertyStore IPropertyStore の内容をコレクションにコピーします。
CopyValuesToPropertyStore コレクションのすべての値を IPropertyStore インターフェイスにコピーします。
GetAt 指定した 0 から始まるインデックスを使用して、コレクションから値を取得します。
GetBoolValue キーで指定された BOOL 値 (型VT_BOOL) を取得します。
GetBufferValue バイト配列値を取得します (型VT_VECTOR |VT_UI1) キーで指定します。
GetCount コレクション内の項目の数を取得します。
GetErrorValue キーで指定された HRESULT 値 (型VT_ERROR) を取得します。
GetFloatValue キーで指定された FLOAT 値 (型VT_R4) を取得します。
GetGuidValue キーで指定された GUID 値 (型VT_CLSID) を取得します。
GetIPortableDeviceKeyCollectionValue キーで指定された IPortableDeviceKeyCollection 値 (型VT_UNKNOWN) を取得します。
GetIPortableDevicePropVariantCollectionValue キーで指定された IPortableDevicePropVariantCollection 値 (型VT_UNKNOWN) を取得します。
GetIPortableDeviceValuesCollectionValue キーによって指定された IPortableDeviceValuesCollection 値 (型VT_UNKNOWN) を取得します。
GetIPortableDeviceValuesValue キーで指定された IPortableDeviceValues 値 (型VT_UNKNOWN) を取得します。
GetIUnknownValue キーで指定された IUnknown インターフェイス値 (型VT_UNKNOWN) を取得します。
GetKeyValue キーで指定された PROPERTYKEY 値を取得します。
GetSignedIntegerValue キーで指定された LONG 値 (型VT_I4) を取得します。
GetSignedLargeIntegerValue キーで指定された LONGLONG 値 (型VT_I8) を取得します。
GetStringValue キーで指定された文字列値 (型VT_LPWSTR) を取得します。
GetUnsignedIntegerValue キーで指定された ULONG 値 (型VT_UI4) を取得します。
GetUnsignedLargeIntegerValue キーで指定された ULONGLONG 値 (型VT_UI8) を取得します。
GetValue キーで指定された PROPVARIANT 値を取得します。
RemoveValue コレクションからアイテムを削除します。
SetBoolValue 新しいブール値 (型VT_BOOL) を追加するか、既存の ブール 値を上書きします。
SetBufferValue 新しい BYTE* 値を追加します (型 VT_VECTOR |VT_UI1) または既存のものを上書きします。
SetErrorValue 新しい HRESULT 値 (型VT_ERROR) を追加するか、既存の HRESULT 値を上書きします。
SetFloatValue 新しい FLOAT 値 (型VT_R4) を追加するか、既存の FLOAT 値を上書きします。
SetGuidValue 新しい GUID 値 (VT_CLSID型) を追加するか、既存の GUID 値を上書きします。
SetIPortableDeviceKeyCollectionValue 新しい IPortableDeviceKeyCollectionValue 値 (型 VT_UNKNOWN) を追加するか、既存の値を上書きします。
SetIPortableDevicePropVariantCollectionValue 新しい IPortableDevicePropVariantCollection 値 (型 VT_UNKNOWN) を追加するか、既存の値を上書きします。
SetIPortableDeviceValuesCollectionValue 新しい IPortableDeviceValuesCollection 値 (型 VT_UNKNOWN) を追加するか、既存の値を上書きします。
SetIPortableDeviceValuesValue 新しい IPortableDeviceValues 値 (型VT_UNKNOWN) を追加するか、既存の値を上書きします。
SetIUnknownValue 新しい IUnknown 値 (VT_UNKNOWN型) を追加するか、既存の IUnknown 値を上書きします。
SetKeyValue 新しい PROPERTYKEY (型VT_UNKNOWN) 値を追加するか、既存の値を上書きします。
SetSignedIntegerValue 新しい LONG 値 (型VT_I4) を追加するか、既存の LONG 値を上書きします。
SetSignedLargeIntegerValue 新しい LONGLONG 値 (型VT_I8) を追加するか、既存の LONGLONG 値を上書きします。
SetStringValue 新しい文字列値 (型VT_LPWSTR) を追加するか、既存の文字列値を上書きします。
SetUnsignedIntegerValue 新しい ULONG 値 (VT_UI4型) を追加するか、既存の ULONG 値を上書きします。
SetUnsignedLargeIntegerValue 新しい ULONGLONG 値 (VT_UI8型) を追加するか、既存の ULONGLONG 値を上書きします。
SetValue 新しい PROPVARIANT 値を追加するか、既存の値を上書きします。

要件

要件
ヘッダー
PortableDeviceTypes.h
ライブラリ
PortableDeviceGUIDs.lib

こちらもご覧ください

コレクション インターフェイス