Implementações do conjunto de propriedades em COM
Embora o potencial para usos de conjuntos de propriedades persistentes não esteja totalmente tocado, atualmente há dois usos primários:
- Armazenando informações resumidas com um objeto como um documento
- Transferindo dados de propriedade entre objetos
Os conjuntos de propriedades COM foram projetados para armazenar dados adequados à representação como uma coleção moderadamente dimensionada de valores refinados. Os conjuntos de dados que são muito grandes para que isso seja viável devem ser divididos em fluxos, armazenamentos e/ou conjuntos de propriedades separados. O formato de dados do conjunto de propriedades COM não foi feito para fornecer um substituto para um banco de dados de muitos objetos minúsculos.
O COM fornece implementações das interfaces do conjunto de propriedades para vários objetos, juntamente com três funções auxiliares. A seção a seguir descreve algumas características de desempenho dessas implementações. Para obter mais informações sobre interfaces específicas e como obter um ponteiro para essas interfaces, consulte o seguinte na seção de referência COM:
IPropertySetStorage–Compound File Implementation
A implementação de arquivo composto, que fornece as interfaces IStorage e IStream, também fornece as interfaces IPropertySetStorage e IPropertyStorage. Dada uma implementação de arquivo composto de IStorage, a interface de IPropertySetStorage pode ser obtida chamando IUnknown::QueryInterface.
implementação do sistema de arquivos IPropertySetStorage–NTFS
As interfacesIPropertySetStoragee IPropertyStoragetambém podem ser obtidas para arquivos NTFS que não são arquivos compostos. Portanto, é possível obter essas interfaces para todos os arquivos em um volume NTFS.
IPropertySetStorage– de implementação autônoma
Quando essa implementação de IPropertySetStorage e IPropertyStorage é instanciada, ele recebe um ponteiro para um objeto que dá suporte à interfacedo IStorage. Em seguida, ele manipula armazenamentos de conjuntos de propriedades dentro desse objeto de armazenamento. Portanto, é possível acessar e manipular conjuntos de propriedades em qualquer objeto compatível.
considerações de implementação de IPropertySetStorage
Há vários problemas a serem considerados ao fornecer uma implementação da interfaceIPropertySetStorage. Consulte essas considerações de implementação na seção referência com.
Além disso, há quatro funções auxiliares, projetadas para ajudar a lidar com propriedades que foram lidas de uma propriedade definida na memória (em uma estrutura PROPVARIANT):
- PropVariantInit
- PropVariantClear
- FreePropVariantArray
- PropVariantCopy
As seções a seguir discutem as implementações do conjunto de propriedades em COM com mais detalhes:
- gerenciamento de conjuntos de propriedades
- Considerações do conjunto de propriedades
- armazenando conjuntos de propriedades
- características de desempenho
- implementando o conjunto de propriedades de informações de resumo
- considerações de implementação de IPropertySetStorage