Интерфейс IPortableDeviceValues
Интерфейс IPortableDeviceValues содержит коллекцию пар PROPERTYKEY/PROPVARIANT . Значения в коллекции не обязательно должны совпадать с VARTYPE.
Значения хранятся в виде пар "ключ-значение"; каждый ключ должен быть уникальным в коллекции. Клиенты могут искать элементы по PROPERTYKEY или индексу с нуля. Значения данных хранятся в виде структур PROPVARIANT . Вы можете добавлять или извлекать значения любого типа с помощью универсальных методов SetValue и GetValue или добавлять элементы с помощью метода, относягося к типу добавленных данных.
Методы Get... требуют, чтобы вызывающий объект освободил все полученные значения соответствующим образом. Методы Set... копируют значение в коллекцию.
При освобождении интерфейса IPortableDeviceValues он вызывает Clear, который освобождает память, выделенную для всех его членов соответствующим образом.
Этот интерфейс можно получить из метода или, если требуется новый объект, вызвать CoCreate с CLSID_PortableDeviceValues.
Элементы
Интерфейс 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 | Извлекает значение 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) или перезаписывает существующее. |
SetFloatValue | Добавляет новое значение FLOAT (тип VT_R4) или перезаписывает существующее. |
SetGuidValue | Добавляет новое значение GUID (тип VT_CLSID) или перезаписывает существующее значение. |
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) или перезаписывает существующее. |
SetUnsignedLargeIntegerValue | Добавляет новое значение ULONGLONG (тип VT_UI8) или перезаписывает существующее. |
SetValue | Добавляет новое значение PROPVARIANT или перезаписывает существующее. |
Требования
Требование | Значение |
---|---|
Заголовок |
|
Библиотека |
|