IPortableDeviceValues 接口
IPortableDeviceValues 接口保存 PROPERTYKEY/PROPVARIANT 对的集合。 集合中的值不需要是相同的 VARTYPE。
值存储为键值对;每个键在集合中必须是唯一的。 客户端可以按 PROPERTYKEY 或从零开始的索引搜索项。 数据值存储为 PROPVARIANT 结构。 可以使用泛型方法 SetValue 和 GetValue 添加或检索任何类型的值,也可以使用特定于所添加数据类型的方法添加项。
Get... 方法要求调用方相应地释放任何检索到的值。 Set... 方法将值复制到集合中。
释放 IPortableDeviceValues 接口时,它会调用 Clear,这会相应地释放为其所有成员分配的内存。
可以从方法检索此接口,或者,如果需要新对象,请使用 CLSID_PortableDeviceValues 调用 CoCreate。
成员
IPortableDeviceValues 接口继承自 IUnknown 接口。 IPortableDeviceValues 还具有以下类型的成员:
方法
IPortableDeviceValues 接口包含以下方法。
方法 | 说明 |
---|---|
清楚 | 从集合中删除所有项。 |
CopyValuesFromPropertyStore | 将 IPropertyStore 的内容复制到集合中。 |
CopyValuesToPropertyStore | 将集合中的所有值复制到 IPropertyStore 接口中。 |
GetAt | 使用提供的从零开始的索引从集合中检索值。 |
GetBoolValue | 检索由键指定的类型VT_BOOL) (BOOL 值。 |
GetBufferValue | 检索 (类型VT_VECTOR的字节数组值 |VT_UI1) 由键指定。 |
GetCount | 检索集合中的项数。 |
GetErrorValue | 检索由键指定的类型VT_ERROR) (HRESULT 值。 |
GetFloatValue | (键指定的类型VT_R4) 检索 FLOAT 值。 |
GetGuidValue | 检索由键指定的类型VT_CLSID) (GUID 值。 |
GetIPortableDeviceKeyCollectionValue | 检索由键指定的类型 (IPortableDeviceKeyCollection 值VT_UNKNOWN) 。 |
GetIPortableDevicePropVariantCollectionValue | 检索由键指定的类型VT_UNKNOWN) (IPortableDevicePropVariantCollection 值。 |
GetIPortableDeviceValuesCollectionValue | (键指定的类型VT_UNKNOWN) 检索 IPortableDeviceValuesCollection 值。 |
GetIPortableDeviceValuesValue | 检索由键指定的类型VT_UNKNOWN) (IPortableDeviceValues 值。 |
GetIUnknownValue | 检索由键指定的类型VT_UNKNOWN) (IUnknown 接口值。 |
GetKeyValue | 检索由键指定的 PROPERTYKEY 值。 |
GetSignedIntegerValue | 检索由键指定的类型VT_I4) (LONG 值。 |
GetSignedLargeIntegerValue | 检索由键指定的类型VT_I8) (LONGLONG 值。 |
GetStringValue | 检索键指定的类型VT_LPWSTR) (字符串值。 |
GetUnsignedIntegerValue | (键指定的类型VT_UI4) 检索 ULONG 值。 |
GetUnsignedLargeIntegerValue | (键指定的类型VT_UI8) 检索 ULONGLONG 值。 |
GetValue | 检索由键指定的 PROPVARIANT 值。 |
RemoveValue | 从集合中删除某一项。 |
SetBoolValue | 将新的 布尔 值 (类型VT_BOOL) 或覆盖现有布尔值。 |
SetBufferValue | (类型VT_VECTOR添加新 的 BYTE* 值 |VT_UI1) 或覆盖现有对象。 |
SetErrorValue | (类型添加新 的 HRESULT 值VT_ERROR) 或覆盖现有值。 |
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) 或覆盖现有值。 |
SetKeyValue | 将新的 PROPERTYKEY (类型VT_UNKNOWN) 值或覆盖现有类型。 |
SetSignedIntegerValue | 将新的 LONG 值 (类型VT_I4) 或覆盖现有类型。 |
SetSignedLargeIntegerValue | 将新的 LONGLONG 值 (类型VT_I8) 或覆盖现有值。 |
SetStringValue | (类型添加新的字符串值VT_LPWSTR) 或覆盖现有字符串值。 |
SetUnsignedIntegerValue | 将新的 ULONG 值 (类型VT_UI4) 或覆盖现有的 ULONG 值。 |
SetUnsignedLargeIntegerValue | 将新的 ULONGLONG 值 (类型VT_UI8) 或覆盖现有值。 |
SetValue | 添加新 的 PROPVARIANT 值或覆盖现有值。 |
要求
要求 | 值 |
---|---|
标头 |
|
库 |
|