Método IPropertySetStorage::Open (propidl.h)
O método Open abre um conjunto de propriedades contido no objeto de armazenamento do conjunto de propriedades.
Sintaxe
HRESULT Open(
[in] REFFMTID rfmtid,
[in] DWORD grfMode,
[out] IPropertyStorage **ppprstg
);
Parâmetros
[in] rfmtid
O FMTID (identificador de formato) do conjunto de propriedades a ser aberto. Para obter mais informações sobre FMTIDs bem conhecidos e predefinidos no SDK da Plataforma, consulte identificadores de formato predefinidos do conjunto de propriedades.
[in] grfMode
O modo de acesso no qual o conjunto de propriedades recém-criado deve ser aberto. Esses sinalizadores são retirados de constantes STGM. Sinalizadores que podem ser usados e seus significados no contexto desse método são descritos na seção Comentários a seguir.
[out] ppprstg
Um ponteiro para o IPropertyStorage variável de ponteiro que recebe o ponteiro de interface para o subobjeto de armazenamento de propriedades solicitado.
Valor de retorno
Esse método dá suporte ao valor de retorno padrão E_UNEXPECTED, além do seguinte:
Observações
O modo no qual o conjunto de propriedades deve ser aberto é especificado no parâmetro grfMode. Esses sinalizadores são retirados de constantes STGM, mas, para esse método, os valores legais e seus significados são os seguintes (apenas determinadas combinações desses valores de sinalizador são legais).
Valor | Significado |
---|---|
STGM_DIRECT | Abre o conjunto de propriedades sem um nível adicional de aninhamento de transações. Esse é o padrão (o comportamento se nem STGM_DIRECT nem STGM_TRANSACTED for especificado). |
STGM_TRANSACTED | Abre o conjunto de propriedades com um nível adicional de aninhamento de transação (além da transação, se houver, nesse objeto de armazenamento do conjunto de propriedades). O modo transacionado está disponível apenas para conjuntos de propriedades não simplificados. As alterações no conjunto de propriedades devem ser confirmadas com uma chamada para IPropertyStorage::Commit antes de ficarem visíveis para a transação neste armazenamento do conjunto de propriedades. |
STGM_READ | Abre o conjunto de propriedades com acesso de leitura. permissão Leitura é necessário no armazenamento do conjunto de propriedades. |
STGM_WRITE | Abre o conjunto de propriedades com acesso de gravação. Nem todas as implementações de IPropertyStorage dão suporte a esse modo. |
STGM_READWRITE | Abre o conjunto de propriedades com acesso de leitura e gravação. Lembre-se de que esse sinalizador não é o OR binário dos valores STGM_READ e STGM_WRITE. |
STGM_SHARE_DENY_NONE | As aberturas subsequentes do conjunto de propriedades desse armazenamento do conjunto de propriedades não são negadas ao acesso de leitura ou gravação. (Não disponível em todas as implementações.) |
STGM_SHARE_DENY_READ | As aberturas subsequentes do conjunto de propriedades desse armazenamento do conjunto de propriedades são negadas ao acesso de leitura. Não disponível em todas as implementações. |
STGM_SHARE_DENY_WRITE | As aberturas subsequentes do conjunto de propriedades desse armazenamento do conjunto de propriedades são negadas ao acesso de gravação. Esse valor normalmente é usado no modo transacionado para impedir a criação de cópias desnecessárias de um objeto aberto por vários usuários. Ou seja, se STGM_TRANSACTED for especificado, mas esse valor não for especificado, um instantâneo será feito, quer haja aberturas subsequentes ou não. Assim, você pode melhorar o desempenho especificando esse valor. Não disponível em todas as implementações. |
STGM_SHARE_EXCLUSIVE | As aberturas subsequentes do conjunto de propriedades desse armazenamento do conjunto de propriedades não são possíveis. Lembre-se de que esse valor não é um OR binário simples dos elementos STGM_SHARE_DENY_READ e STGM_SHARE_DENY_WRITE. |
Esse método está sujeito às restrições do IStorage::OpenStream (para conjuntos de propriedades simples) ou IStorage::OpenStorage (para conjuntos de propriedades não simplificados). Para obter mais informações sobre conjuntos de propriedades simples e não simplificados, consulte Storage and Stream Objects for a Property Set. Por exemplo, ao usar o de Implementação de ArquivoIPropertySetStorage-Compound, você deve especificar STGM_SHARE_EXCLUSIVE no parâmetro grfMode para IPropertySetStorage::Open. Por outro lado, se estiver usando o de implementaçãoIPropertySetStorage-Stand-alone, IPropertySetStorage::Open está sujeito a restrições que se aplicam ao IStorageespecificado pelo chamador.
Requisitos
Requisito | Valor |
---|---|
de cliente com suporte mínimo | Windows 2000 Professional [aplicativos da área de trabalho | Aplicativos UWP] |
servidor com suporte mínimo | Windows 2000 Server [aplicativos da área de trabalho | Aplicativos UWP] |
da Plataforma de Destino | Windows |
cabeçalho | propidl.h (inclua Objbase.h) |
biblioteca | Uuid.lib |
de DLL | Ole32.dll |