IPortableDeviceValues 接口

IPortableDeviceValues 接口包含 PROPERTYKEYPROPVARIANT/ 对的集合。 集合中的值不需要是相同的 VARTYPE。

值存储为键值对;每个键在集合中必须是唯一的。 客户端可以按 PROPERTYKEY 或从零开始的索引搜索项。 数据值存储为 PROPVARIANT 结构。 可以使用泛型方法 SetValueGetValue 添加或检索任何类型的值,也可以使用特定于所添加数据类型的方法添加项。

Get... 方法要求调用方适当释放任何检索的值。 Set... 方法将值复制到集合中。

释放 IPortableDeviceValues 接口时,它会调用 Clear,这将释放为其所有成员适当分配的内存。

可以从方法检索此接口,或者如果需要新对象,请使用 CLSID_PortableDeviceValues 调用 CoCreate

成员

IPortableDeviceValues 接口继承自 IUnknown 接口。 IPortableDeviceValues 也包含以下类型的成员:

方法

IPortableDeviceValues 接口具有这些方法。

方法 说明
Clear 从集合中删除所有项。
CopyValuesFromPropertyStore IPropertyStore 的内容复制到集合中。
CopyValuesToPropertyStore 将集合中的所有值复制到 IPropertyStore 接口中。
GetAt 使用提供的从零开始的索引从集合中检索值。
GetBoolValue 检索由键指定的 boOL 值 (类型VT_BOOL) 。
GetBufferValue 检索字节数组值 (类型VT_VECTOR |由键指定的VT_UI1) 。
GetCount 检索集合中的项数。
GetErrorValue 检索由键指定的 hrESULT 值 (类型VT_ERROR) 。
GetFloatValue 检索由键指定的 FLOAT 值 (类型VT_R4) 。
GetGuidValue 检索由键指定的 guiD 值 (类型VT_CLSID) 。
GetIPortableDeviceKeyCollectionValue (键指定的类型VT_UNKNOWN) 检索 IPortableDeviceKeyCollection 值。
GetIPortableDevicePropVariantCollectionValue 检索由键指定的 IPortableDevicePropVariantCollection 值 (类型VT_UNKNOWN) 。
GetIPortableDeviceValuesCollectionValue (键指定的类型VT_UNKNOWN) 检索 IPortableDeviceValuesCollection 值。
GetIPortableDeviceValuesValue (键指定的类型VT_UNKNOWN) 检索 IPortableDeviceValues 值。
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 (类型VT_VECTOR |添加新 的 BYTE* 值VT_UI1) 或覆盖现有项。
SetErrorValue VT_ERROR) 或覆盖现有类型 (添加新 的 HRESULT 值。
SetFloatValue VT_R4) 或覆盖现有类型 (添加新 的 FLOAT 值。
SetGuidValue VT_CLSID) 或覆盖现有 GUID 类型 (添加新 GUID 值。
SetIPortableDeviceKeyCollectionValue (类型VT_UNKNOWN) 或覆盖现有类型添加新 的 IPortableDeviceKeyCollectionValue 值。
SetIPortableDevicePropVariantCollectionValue VT_UNKNOWN) 或覆盖现有类型 (添加新 的 IPortableDevicePropVariantCollection 值。
SetIPortableDeviceValuesCollectionValue (类型VT_UNKNOWN) 或覆盖现有类型添加新 的 IPortableDeviceValuesCollection 值。
SetIPortableDeviceValuesValue VT_UNKNOWN) 或覆盖现有类型 (添加新 的 IPortableDeviceValues 值。
SetIUnknownValue (类型VT_UNKNOWN) 或覆盖现有类型添加新的 IUnknown 值。
SetKeyValue 添加新 的 PROPERTYKEY (类型VT_UNKNOWN) 值或覆盖现有类型。
SetSignedIntegerValue VT_I4) 或覆盖现有 类型的新 LONG 值 (类型。
SetSignedLargeIntegerValue VT_I8) 或覆盖现有类型的新 LONGLONG 值 (类型。
SetStringValue VT_LPWSTR) 或覆盖现有字符串类型 (添加新字符串值。
SetUnsignedIntegerValue VT_UI4) 或覆盖现有类型 (添加新 的 ULONG 值。
SetUnsignedLargeIntegerValue VT_UI8) 或覆盖现有类型 (添加新 的 ULONGLONG 值。
SetValue 添加新 的 PROPVARIANT 值或覆盖现有值。

要求

要求 Value
标头
PortableDeviceTypes.h

PortableDeviceGUIDs.lib

另请参阅

集合接口