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.
Os documentos compostos OLE permitem que os usuários que trabalham em um único aplicativo manipulem dados gravados em vários formatos e derivados de várias fontes. Por exemplo, um usuário pode inserir em um documento de processamento de texto um gráfico criado em um segundo aplicativo e um objeto de som criado em um terceiro aplicativo. A ativação do gráfico faz com que o segundo aplicativo carregue sua interface de usuário, ou pelo menos aquela parte que contém as ferramentas necessárias para editar o objeto. A ativação do objeto de som faz com que o terceiro aplicativo o reproduza. Em ambos os casos, um usuário é capaz de manipular dados de fontes externas a partir do contexto de um único documento.
A tecnologia de documento composto OLE baseia-se em uma base que consiste em COM, armazenamento estruturado e transferência uniforme de dados. Como resumido abaixo, cada uma dessas tecnologias principais desempenha um papel crítico em documentos compostos OLE:
-
COM
-
Um objeto de documento composto é essencialmente um objeto COM que pode ser incorporado ou vinculado a um documento existente. Como um objeto COM, um objeto de documento composto expõe o IUnknown interface, através do qual os clientes podem obter ponteiros para suas outras interfaces, incluindo várias, como IOleObject, IOleLinke IViewObject2, que fornecem recursos especiais exclusivos para objetos de documento compostos.
-
armazenamento estruturado
-
Um objeto de documento composto deve implementar o IPersistStorage ou, opcionalmente, interfaces IPersistStream para gerenciar seu próprio armazenamento. Um contêiner usado para criar documentos compostos deve fornecer o interface IStorage, através da qual os objetos armazenam e recuperam dados. Os contêineres quase sempre fornecem instâncias de IStorage obtidas da implementação de arquivos compostos do OLE. Os contêineres também devem usar o IPersistStorage de um objeto e/ou interfaces de IPersistStream.
-
Transferência Uniforme de Dados
-
Os aplicativos que oferecem suporte a documentos compostos devem implementar IDataObject porque objetos incorporados e objetos vinculados começam como dados que foram transferidos usando formatos especiais da área de transferência OLE, em vez de formatos padrão da área de transferência do Microsoft Windows. Em outras palavras, formatar dados como um objeto incorporado ou vinculado é simplesmente mais uma opção fornecida pelo modelo uniforme de transferência de dados do OLE.
A tecnologia de documentos compostos da OLE beneficia tanto os desenvolvedores de software quanto os usuários. Em vez de se sentirem obrigados a reunir todos os recursos imagináveis em um único aplicativo, os desenvolvedores de software agora estão livres, se quiserem, para desenvolver aplicativos menores e mais focados que dependem de outros aplicativos para fornecer recursos adicionais. Nos casos em que um desenvolvedor de software decide fornecer um aplicativo com recursos além de seus recursos principais, o desenvolvedor pode implementar esses serviços adicionais como DLLs separadas, que são carregadas na memória somente quando seus serviços são necessários. Os usuários se beneficiam de um software menor, mais rápido e mais capaz que eles podem misturar e combinar conforme necessário, manipulando todos os componentes necessários a partir de um único documento mestre.
Para obter mais informações, consulte os seguintes tópicos:
- Contêineres e Servidores
- Vinculando e incorporando
- manipuladores de objetos
- In-Process Servidores
- Objetos Vinculados e Monikers
- Notificações
- Interfaces de documentos compostos
- Estados do objeto
- Implementação de In-Place de ativação
- Criando objetos vinculados e incorporados a partir de dados existentes
- de cache de exibição
Tópicos relacionados