Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Einbindung von Papierformaten (PDF, XPS) in Delphi Anwendung (https://www.delphipraxis.net/159793-einbindung-von-papierformaten-pdf-xps-delphi-anwendung.html)

Bernhard73 13. Apr 2011 05:43

Einbindung von Papierformaten (PDF, XPS) in Delphi Anwendung
 
Hallo zusammen,

ich bin schon länger auf der Suche nach einer Möglichkeit, PDF-Dokumente in einer meiner Anwendungen anzuzeigen. Alternativ ginge auch ein anderes Papierformat wie XPS, dazu findet sich im WWW im Zusammenhang mit Delphi allerdings kaum etwas.
Bislang verwende ich TAcroPDF, wobei in meinem Programm 5 Instanzen notwendig sind. Die teilweise nicht abschaltbaren Menüleisten und der Resourcenverbrauch sind hierbei Ärgernisse, die ich noch verschmerzen könnte. Allerdings kommt es beim Beenden der Anwendung immer wieder zu Schutzverletzungen, die möglicherweise mit einem Programmierfehler im Reader zusammenhängen. Zumindest kann ich sie mit keinem der zahlreichen Tipps zu diesem Thema beseitigen (CoFreeUnusedLibraries etc.). Auch eine Kapselung im TWebBrowser bringt da nichts. Selbst wenn man das Programm korrekt beendet und dann den Computer herunterfahren will, zeigt sich oft, das die AcroPDF-Instanzen manchmal nicht zerstört wurden (bzw. mit großer Zeitverzögerung zerstört werden) und noch existieren - Acrobat Reader meldet sich. Für den Anwender ist das insgesamt ziemlich nervig.
Alternative PDF Viewer Komponenten sind mir zu teuer, zumal ich an dem Programm nix verdiene.

Hat da jemand vielleicht eine zündende Idee?

Besten Dank,
Bernhard

Klaus01 13. Apr 2011 09:01

AW: Einbindung von Papierformaten (PDF, XPS) in Delphi Anwendung
 
Guten Morgen,

Du kannst auch die TWebbrowser Komponente zum Anzeigen von pdf
Dateien verwenden.
Auf dem Zielsystem muss dann allerdings zumindest ein Acrobat Reader installiert sein.

Edit: Hatte die Zeile
Zitat:

Auch eine Kapselung im TWebBrowser bringt da nichts.
überlesen.

Grüße
Klaus

Bernhard Geyer 13. Apr 2011 09:07

AW: Einbindung von Papierformaten (PDF, XPS) in Delphi Anwendung
 
Welche Acrobat-Versionen betrifft es? Liegt eine Mix-Installation von Acrobat und Reader in unterschiedlichen Versionen vor?

Bernhard73 13. Apr 2011 09:40

AW: Einbindung von Papierformaten (PDF, XPS) in Delphi Anwendung
 
Danke für Eure Antworten.

Die Versionen des Readers und der entsprechenden ActiveX scheinen unterschiedlich zu sein:

Acrobat Reader: Version 8.0.0
TAcroPDF ActiveX: Adobe Acrobat 7.0 Browser Control Type Library 1.0

Macht das Probleme? Was Installationen anbelangt bin ich allerdings etwas eingeschränkt, da keine Admin-Rechte (EDV-Umgebung einer Uni).

Bernhard

Bernhard Geyer 13. Apr 2011 09:42

AW: Einbindung von Papierformaten (PDF, XPS) in Delphi Anwendung
 
Zitat:

Zitat von Bernhard73 (Beitrag 1094782)
Acrobat Reader: Version 8.0.0

Dann sorg dafür das das letzte Update 8.2.6 oder gleich Version 10.0.1 installiert wird.
Die ungepatchten Versionen von Adobe sind oft sehr Fehlerhaft und Instabil was Einbindung in andere Programme betrifft.

mkinzler 13. Apr 2011 10:04

AW: Einbindung von Papierformaten (PDF, XPS) in Delphi Anwendung
 
Mit AcrobatX (10) hat man aber dann u.U. andere Probleme

Bernhard Geyer 13. Apr 2011 10:14

AW: Einbindung von Papierformaten (PDF, XPS) in Delphi Anwendung
 
Zitat:

Zitat von mkinzler (Beitrag 1094789)
Mit AcrobatX (10) hat man aber dann u.U. andere Probleme

Läuft unerwartet stabil trotz geringen Patch-Level.

mkinzler 13. Apr 2011 10:19

AW: Einbindung von Papierformaten (PDF, XPS) in Delphi Anwendung
 
AcrobatX blockiert halt diverse Dinge, z.B. funktioniert der (?er) IFilter nicht mehr, wenn der neue Reader installiert ist.
Zudem verhindert der standardmässig aktivierte Sandboxmode einiges, obwohl er grundsätzlich mehr Sicherheit bringt.

Bernhard Geyer 13. Apr 2011 10:29

AW: Einbindung von Papierformaten (PDF, XPS) in Delphi Anwendung
 
Zitat:

Zitat von mkinzler (Beitrag 1094796)
AcrobatX blockiert halt diverse Dinge, z.B. funktioniert der (?er) IFilter nicht mehr, wenn der neue Reader installiert ist.

Genau wie die Positionierung im Dokument per "nachgeschobene" XML-Datei.


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:21 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz