Pergunta

Eu importei o Reader Acrobat usando componentes | Componentes de importação.A unidade AcroPdf_TLB é criada no diretório Imports.

Quando tento utilizar o componente AcrobatReader, da seguinte forma...

AcroDoc := TAcroPDF.Create(nil);

...Recebo uma exceção de 'Erro não especificado' (EOleSysError).Alguma ideia?

Obrigado, Pieter.

Foi útil?

Solução

Usamos o plug-in do Adobe Reader e enfrentamos esse problema com frequência. Ele aparece particularmente depois que um usuário executa uma atualização da web no leitor da Adobe.

Tentar não instalar (através do painel de controle), então reinstalar O mais recente leitor da Adobe.

Isso invariavelmente limpa o problema para nossos usuários.

Outras dicas

Se você está descontente com os resultados que está chegando lá (eu estava), você pode considerar dar Quickpdf uma tentativa. O preço não é irracional, eles têm muitas boas funções em PDF incluídas e você pode exibir um PDF com precisão em um controle de tempo com uma chamada para renderizarpagetostream. Uma coisa que descobri trabalhar com os campos de formulário é que eu tive que usar o FlattenformField antes de renderizar para que o conteúdo do campo do formulário fosse incluído na imagem renderizada.

Acompanhamento:

Eu não mencionei originalmente que o QuickPDF também funciona para impressão. Para os campos do formulário, você deve fazer a mesma rotina Flattenformfield, mas os resultados parecem bons com muito menos sobrecarga do que depender do leitor do Acrobat.

Coloque o componente em um tform, então provavelmente funciona.

O objeto Acrobat ActiveX/Com é notório por não suportar interfaces de versões mais antigas corretamente. Você fica EolesySerrorestá em todo o lugar.

O que eu fiz pessoalmente para alguns clientes é carregar os documentos em PDF em um Twebbrowser.

O TwebBrowser é um invólucro em torno do componente ActiveX/COM que o Internet Explorer usa para exibir tudo.

A Adobe é muito boa em fazer esse trabalho com cada atualização do Acrobat; portanto, o TwebBrowser também funciona.

Observe que isso só faz sentido para exibir o documento PDF.

--Jeroen

Usamos com sucesso o componente leitor do acrobat v6 em nosso aplicativo Delphi 7, mas descobrimos que ele realmente requer o acrobat v6.Os usuários de hoje que instalam apenas o Acrobat v9 recebem um erro ao usar nosso aplicativo para visualizar um PDF porque o componente Acrobat não é compatível com versões anteriores dessa forma.

Então, sim, você pode fazer isso, mas provavelmente haverá problemas no futuro.

Uma ferramenta de terceiros é provavelmente melhor...

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top