Metodo IPropertyStore::SetValue (propsys.h)

Questo metodo imposta un valore di proprietà o sostituisce o rimuove un valore esistente.

Sintassi

HRESULT SetValue(
  REFPROPERTYKEY key,
  REFPROPVARIANT propvar
);

Parametri

key

TBD

propvar

TBD

Valore restituito

Il IPropertyStore::SetValue metodo può restituire uno dei seguenti elementi:

Codice restituito Descrizione
S_OK
La modifica della proprietà ha avuto esito positivo.
INPLACE_S_TRUNCATED
Il valore è stato impostato ma troncato.
STG_E_ACCESSDENIED
Si tratta di un codice di errore. L'archivio delle proprietà è stato di sola lettura in modo che il metodo non sia stato in grado di impostare il valore.

Commenti

IPropertyStore::SetValue influisce solo sull'istanza dell'archivio delle proprietà corrente. Un gestore delle proprietà implementa IPropertyStore::SetValue accumulando le modifiche delle proprietà in una struttura di dati in memoria. Le modifiche delle proprietà vengono scritte nel flusso solo quando viene chiamato IPropertyStore::Commit .

Se viene chiamato IPropertyStore::Commit in un archivio delle proprietà di sola lettura, il gestore delle proprietà determina questa operazione e restituisce STG_E_ACCESSDENIED.

Se un valore è stato aggiunto o rimosso come risultato di SetValue, le enumerazioni successive da IPropertyStore::GetCount e IPropertyStore::GetAt riflettono tale modifica e le chiamate successive per IPropertyStore::SetValue riflettere il valore modificato.

Aggiunta di una nuova proprietà

Se il valore della proprietà a cui è stato fatto riferimento per chiave non esiste nell'archivio, IPropertyStore::SetValue aggiunge il valore all'archivio.

Sostituzione di un valore di proprietà esistente

Se il valore della proprietà a cui è stato fatto riferimento per chiave esiste già nell'archivio, il valore archiviato viene sostituito.

Rimozione di una proprietà esistente

Per rimuovere un valore dall'archivio delle proprietà, impostare il membro vt della struttura a cui fa riferimento pv su VT_EMPTY. Se tale valore non è presente, non eseguire alcuna operazione e il metodo restituisce S_OK.

Requisiti

Requisito Valore
Client minimo supportato Disponibile con Windows Vista e versioni successive del sistema operativo Windows.
Piattaforma di destinazione Universale
Intestazione propsys.h
Libreria Propsys.idl
IRQL Tutti i livelli

Vedi anche

Ipropertystore

IPropertyStore::Commit

IPropertyStore::GetAt

IPropertyStore::GetCount