Sumário
- Pastas de trabalho do Microsoft Excel
- Apresentações do Microsoft PowerPoint
- Documentos do Microsoft Word
- Projetos do Microsoft Project
- Desenhos do Microsoft Visio
- Outros arquivos que são salvos no formato de armazenamento estruturado OLE
Mais informações
Exemplo de componente ActiveX para download
Os seguintes arquivos estão disponíveis para download no Centro de Download da Microsoft:Você tem um direito de royalties para usar, modificar, reproduzir e distribuir o componente de arquivo de exemplo Dsofile e arquivos código-fonte C++ de qualquer maneira que útil. Isso é desde que você concorda que a Microsoft tem nenhuma garantia, sem obrigações e nenhuma responsabilidade para seu uso ou para as informações fornecidas. O código-fonte e de componente é fornecido gratuitamente apenas para fins educacionais e é considerado uma amostra. Se você deseja usar o componente ou qualquer parte dele, em uma solução de produção, você é responsável por revisar, para modificar, para testar e para o componente de suporte por conta própria.
Aviso: O Dsofile, o código-fonte e os exemplos associados são fornecidos "como estão" sem garantia de qualquer tipo, expressas ou implícitas, inclusive mas não limitada às garantias implícitas de comercialização e/ou adequação para uma finalidade específica. Use por seu próprio risco.
Observação: Para ler e editar documentos do Office 2007 usando este exemplo, você deve instalar o pacote de compatibilidade do Office 2007. Para obter mais informações, consulte a seção "Recursos".
Informações sobre propriedades de documento OLE
Todos os documentos compostos OLE podem armazenar informações adicionais sobre o documento em conjuntos de propriedades persistentes. Esses são chamados coletivamente de "Propriedades do documento resumo." Esses conjuntos de propriedades são gerenciados pelo "COM/OLE" para que clientes de terceiros podem ler estas informações sem o auxílio do aplicativo principal é responsável para o arquivo.Para ajudar os desenvolvedores que estejam interessados em ler as propriedades do documento, oferecemos duas interfaces para gerenciar conjuntos de propriedades a seguir:
- IPropertySetStorage
- IPropertyStorage
Usar o componente DsoFile do seu aplicativo personalizado
O arquivo de exemplo Dsofile lê e grava as propriedades padrão e as propriedades personalizadas de qualquer arquivo de "Armazenamento estruturado OLE". Isso inclui, mas não está limitado a, o seguinte:- Documentos do Word
- Pastas de trabalho do Excel
- Apresentações do PowerPoint
Para usar o componente, defina uma referência à biblioteca de tipos Dsofile é denominada "DSO OLE documento propriedades leitor 2.1." O componente pode ser usado para chamadas atrasadas e chamadas early bound. o arquivo de exemplo Dsofile tem apenas um objeto que pode ser criado. Esse objeto é denominado OleDocumentProperties. O objeto OleDocumentProperties fornece acesso às propriedades de documento OLE de um arquivo carregado usando o método Open . Todas as propriedades são lidas e armazenadas em cache ao abrir. Todas as propriedades são então disponibilizadas através do objeto OleDocumentProperties para edição. As propriedades são somente gravadas no arquivo quando você chamar Salvar. Quando você tiver terminado editar um arquivo, chamada Fechar para liberar o arquivo bloquear.
As propriedades OLE padrão e as propriedades de resumo do Office padrão podem ser obtidas da propriedade SummaryProperties . Propriedades personalizadas são listadas na coleção CustomProperties . Cada propriedade personalizada tem um nome exclusivo. Cada propriedade personalizada está acessível na coleção com esse nome. Você pode adicionar ou remover propriedades individuais. Além disso, você pode enumerar toda a coleção inteira usando a sintaxe "For Each" no Visual Basic .NET.
Quando o métodoOpen for chamado, o objeto OleDocumentProperties chamado Dsofile tenta abrir o documento para acesso de leitura e gravação acesso. Se o arquivo tiver sido marcado como somente leitura ou se os arquivos estiver localizado em um compartilhamento de NTFS só fornece acesso de leitura, a chamada pode falhar. Você pode receber a seguinte mensagem de erro:
Depois que uma propriedade foi alterada ou modificada, você pode usar a propriedade IsDirty para verificar se o conjunto de propriedades deve ser salvo. As alterações feitas não são gravadas no arquivo até Salvar é chamado. Se você não chamar Salvar, suas alterações são perdidas em Fechar.
Além disso, as mensagens de erro de automação padrão, Dsofile pode retornar uma das seguintes mensagens de erro personalizadas quando algo dá errado:
Conjuntos de propriedades Unicode
Conjuntos de propriedades OLE pode armazenar sequências de caracteres no formato Unicode ou no formato de sequência de caracteres multibyte (MBCS) com uma página de código especificada. O Dsofile pode ler e gravar qualquer tipo de conjunto de propriedades. Por padrão, o Dsofile seleciona Unicode quando Dsofile cria novos conjuntos, como ao adicionar propriedades a um arquivo que possui nenhum. Se você desejar Dsofile para criar o conjunto usando o formato MBCS para cadeias de caracteres, você pode passar o sinalizador dsoOptionUseMBCStringsForNewSets o método Open .Como conjuntos de propriedades existentes podem usar o formato MBCS, Dsofile tem que armazenar sequências de caracteres no mesmo formato durante uma operação Salvar. Se você tentar adicionar uma sequência de caracteres que não consegue mapear para a página de código para o conjunto de propriedades, a operação poderá falhar. Portanto, limite suas sequências de caracteres que você sabe que existe na página de código do sistema que fez o arquivo. Como alternativa, certifique-se de que todos os conjuntos de propriedades estão no formato Unicode antes de editar essas propriedades.
Observação: O Dsofile não converte uma propriedade MBCS existente definida como Unicode. Você precisa modificar o exemplo se você deseja adicionar essa capacidade.
Etapas para configurar e testar a DLL
O programa de instalação auto-extraível instala e registra o componente Dsofile em um local que você deseja. A instalação de extração automática também instala dois aplicativos de teste de .NET do Visual Basic que demonstram como usar o componente e o código-fonte.Se você mover a DLL para outro local ou para outro computador, você precisa registrar novamente a DLL antes de usá-lo novamente. Para fazer isso, digite regsvr32 [filepath]\dsofile.dll na caixa de diálogo Executar no menu Iniciar .
Para executar o exemplo, execute essas etapas:
Para uma demonstração do Visual Basic 6.0
- Abra o projeto de exemplo do Visual Basic 6.0 é chamado da seguinte maneira:
.\Source\Vb6Demo\PropDemo.vbp - Certifique-se de que o Dsofile foi referenciado corretamente. Para fazer isso, selecione referências no menu projeto . Verifique se uma referência está definida para DSO OLE documento propriedades leitor 2.1.
- Pressione F5 para executar o projeto.
- Quando você for solicitado a abrir um arquivo de documento composto, selecione um arquivo apropriado e observe que suas propriedades de documento são exibidos.
Para um Visual Basic 2003 (7.1) ou para uma demonstração do Visual Basic 2005 (8.0)
- Abra o projeto Visual Basic 7.1 chamado da seguinte maneira:
.\Source\Vb7Demo\FilePropDemoVB7.sln
Você pode abrir este projeto no 7.1 ambos Visual Basic no Visual Studio .NET 2003 ou no Visual Basic 8.0 no Visual Studio 2005. - Se você for solicitado a converter automaticamente a solução para o formato 8.0, clique em Sime siga o Assistente para converter o projeto.
- Pressione F5 para compilar e executar o projeto Visual Basic.
- Quando o formulário for exibido, clique em Abrir.
- Selecione um arquivo do Office apropriado e clique em Okey.
Observe que as propriedades do documento do arquivo Office são exibidos na caixa de diálogo. Você pode editar as propriedades do documento.
