Grupos de propriedades compartilhadas
Para evitar colisões de nome entre propriedades criadas por objetos diferentes, o gerenciador de propriedades compartilhadas (SPM) usa grupos de propriedades compartilhadas. Um grupo de propriedades compartilhadas é simplesmente um namespace para um conjunto de propriedades compartilhadas. Cada propriedade dentro de um grupo de propriedades compartilhadas consiste em um nome, um valor e uma posição dentro do grupo de propriedades compartilhadas. O nome ou a posição podem ser usados para recuperar o valor da propriedade. Você pode acessar e criar grupos de propriedades compartilhadas por meio do gerenciador de grupos de propriedades compartilhadas.
O modelo de objeto SPM é mostrado na ilustração a seguir.
A seguir estão as interfaces do gerenciador de propriedades compartilhadas:
ISharedPropertyGroupManager é usado para criar grupos de propriedades compartilhadas e para obter acesso a grupos de propriedades compartilhadas existentes. Você pode acessar a interface ISharedPropertyGroupManager criando uma instância do objeto SharedPropertyGroupManager usando IObjectContext::CreateInstance ou CoCreateInstance.
ISharedPropertyGroup é usado para criar e acessar as propriedades compartilhadas em um grupo de propriedades compartilhadas. Você pode acessar a interface ISharedPropertyGroup criando um objeto SharedPropertyGroup com o método ISharedPropertyGroupManager::CreatePropertyGroup. Como com qualquer objeto COM, você deve liberar um objeto SharedPropertyGroup quando terminar de usá-lo.
ISharedProperty é usado para definir ou recuperar o valor de uma propriedade compartilhada. Uma propriedade compartilhada pode conter qualquer tipo de dados que possa ser representado por uma Variant. Você pode acessar a interface ISharedProperty criando um objeto SharedProperty com o método ISharedPropertyGroup::CreateProperty ou o método ISharedPropertyGroup::CreatePropertyByPosition. Um objeto SharedProperty pode ser criado ou acessado somente de dentro de um objeto SharedPropertyGroup. Novamente, você deve liberar um objeto SharedProperty quando terminar de usá-lo.
Tópicos relacionados