共用方式為


IPortableDeviceValues::SetValue 方法

SetValue方法會新增PROPVARIANT值,或覆寫現有的值。

語法

HRESULT SetValue(
  [in]       REFPROPERTYKEY key,
  [in] const PROPVARIANT    *pValue
);

參數

機碼 [in]

REFPROPERTYKEY,指定要建立或覆寫的專案。

pValue [in]

指定新值的 PROPVARIANT 。 SDK 會複製值,因此呼叫端可以在呼叫這個方法之後呼叫 PropVariantClear 來釋放區域變數。

傳回值

方法會傳回 HRESULT。 可能的值包括 (但不限於) 下表中的這些值。

傳回碼 描述
S_OK
此方法已成功。

備註

pValue 的 VARTYPE VT_VECTOR或VT_UI1時,不支援設定 Null 或零大小的緩衝區。 例如,不允許 pValue.caub.pElems = Null 或 pValue.caub.cElems = 0。

這個方法可用來從集合中擷取任何類型的值。 不過,如果您事先知道實數值型別,請使用此介面的其中一個特製化 Set... 方法,以避免直接使用 PROPVARIANT 值的額外負荷。

如果現有值具有 key 參數所指定的相同 索引鍵 ,它會覆寫現有的值,而不會發出任何警告。 現有的金鑰記憶體會適當地釋放。

規格需求

需求
標頭
PortableDeviceTypes.h
程式庫
PortableDeviceGUIDs.lib

另請參閱

IPortableDeviceValues 介面

IPortableDeviceValues::GetValue

IPortableDeviceValues::RemoveValue