Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Cria um repositório de propriedades na memória.
Sintaxe
PSSTDAPI PSCreateMemoryPropertyStore(
[in] REFIID riid,
[out] void **ppv
);
Parâmetros
[in] riid
Tipo: REFIID
Referência à ID da interface solicitada.
[out] ppv
Tipo: void**
Quando essa função retorna, contém um ponteiro para a interface desejada, normalmente IPropertyStore ou IPersistSerializedPropStorage.
Retornar valor
Tipo: HRESULT
Se essa função for bem-sucedida, ela retornará S_OK. Caso contrário, ele retornará um código de erro HRESULT.
Comentários
Essa função cria um objeto de repositório de propriedades na memória que implementa IPropertyStore, INamedPropertyStore, IPropertyStoreCache, IPersistStream, IPropertyBag e IPersistSerializedPropStorage.
Esse é o mesmo objeto identificado por InMemoryPropertyStore (CLSID_InMemoryPropertyStore) e InMemoryPropertyStoreMarshalByValue (CLSID_InMemoryPropertyStoreMarshalByValue), construído com CoCreateInstance.
InMemoryPropertyStoreMarshalByValue pode ser usado em designs que passam objetos entre processos para torná-los mais eficientes. Ele implementa marshal by value, criando uma cópia do objeto no contexto unmarshal e evita comunicação entre processos que pode ser cara.
O repositório de propriedades de memória não tem representação presistent, portanto, as chamadas para IPropertyStore::Commit são uma no-op.
O repositório de propriedades de memória é thread-safe e ágil.
Exemplos
O exemplo a seguir demonstra como usar InMemoryPropertyStore.
auto memPropStore = wil::CoCreateInstance<InMemoryPropertyStore, IPropertyStore>();
auto value = PROPVARIANT{};
value.vt = VT_LPWSTR;
value.pwszVal = L"Title";
THROW_IF_FAILED(memPropStore->SetValue(PKEY_Title, value));
Requisitos
| Requisito | Valor |
|---|---|
| Cliente mínimo com suporte | Windows XP com SP2, Windows Vista [somente aplicativos da área de trabalho] |
| Servidor mínimo com suporte | Windows Server 2003 com SP1 [somente aplicativos da área de trabalho] |
| Plataforma de Destino | Windows |
| Cabeçalho | propsys.h |
| Biblioteca | Propsys.lib |
| DLL | Propsys.dll (versão 6.0 ou posterior) |
| Redistribuível | Pesquisa da Área de Trabalho do Windows (WDS) 3.0 |