AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Webbroser Componente zum PDF-Anzeigen
Thema durchsuchen
Ansicht
Themen-Optionen

Webbroser Componente zum PDF-Anzeigen

Ein Thema von Smiley · begonnen am 11. Jul 2005 · letzter Beitrag vom 15. Jul 2005
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von Smiley
Smiley

Registriert seit: 9. Dez 2004
Ort: Gedern
205 Beiträge
 
Delphi 10.4 Sydney
 
#1

Webbroser Componente zum PDF-Anzeigen

  Alt 11. Jul 2005, 19:07
Ich benutze die Webbrowser-Komponente zum anzeigen von .pdf Dokumenten, das funktioniert soweit ganz gut.
Leider ist das Problem, dass dabei ja immer der aktuelle AcrobatReader aufgerufen wird und ich dieses Programm nicht wieder schließen kann.
Es kommt immer wieder mal vor, dass sich der AcrobatReader nicht wieder schließt und damit die zuletzt benutzte .pdf datei nicht wieder freigibt.
Ich muss die angezeigte Datei in ein anderes Verzeichnis kopieren und umbenennen und dann im alten Verzeichnis wieder löschen.
Das löschen funktioniert aber nicht, wenn die Datei noch in Benutzung ist.
Zur Zeit behelfe ich mich damit, dass ich den AcrobatReader aus dem TaskManager lösche (KillProcId) und dann die Datei lösche. Das funktioniert aber auch nicht immer, da es ja etwas dauert bis die Datei freigegeben ist. Ich habe schon einen sleep nach dem KillProcId eingebaut, das hilft aber auch nicht immer.
Kann sein, dass ich mir viel zu viel Arbeit mache, aber ich kann es nicht anders.
Es gibt doch bestimmt eine einfachere Lösung.
Den Acrobat über ActiceX oder Dll ansprechen fällt weg, da ich icht weiß, welche Acrobatversion auf dem jeweiligen Computer installiert ist und die verschiedenen Acrobatversionen sich nich gleich ansprechen lassen.
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#2

Re: Webbroser Componente zum PDF-Anzeigen

  Alt 11. Jul 2005, 19:23
Hallo Smiley,

die Verschachtelung von WebBrowser und Acrobat Reader ist nicht wirklich nötig:

ShellExecute(Handle, 'open', 'c:\media\ebooks\assemblerbuch.pdf', '', '', SW_SHOWNORMAL); Warum du das Fenster auch wieder schließen willst habe ich nicht verstanden.

marabu
  Mit Zitat antworten Zitat
Benutzerbild von Smiley
Smiley

Registriert seit: 9. Dez 2004
Ort: Gedern
205 Beiträge
 
Delphi 10.4 Sydney
 
#3

Re: Webbroser Componente zum PDF-Anzeigen

  Alt 11. Jul 2005, 20:19
Das mit shellexecute habe ich auch gemacht, aber ich benötige die anzeige meist in einem festen Fesnster in meinem Formular.
Daher die Webbrowserlösung.
Mein Problem ist, dass ich die PDF-Datei die mit dem AcrobatReader gerade geöffnet ist, nicht löschen kann.
  Mit Zitat antworten Zitat
MathiasSimmack
(Gast)

n/a Beiträge
 
#4

Re: Webbroser Componente zum PDF-Anzeigen

  Alt 11. Jul 2005, 20:21
Gibt´s nicht ´ne direkte Komponente (Typbibliothek), die man nutzen kann, sobald der Reader installiert ist? Dürfte doch besser sein als der Weg über den IE.
  Mit Zitat antworten Zitat
Benutzerbild von Aenogym
Aenogym

Registriert seit: 7. Mär 2004
Ort: Schwerin
1.089 Beiträge
 
Delphi 7 Enterprise
 
#5

Re: Webbroser Componente zum PDF-Anzeigen

  Alt 11. Jul 2005, 20:36
Zitat von MathiasSimmack:
Gibt´s nicht ´ne direkte Komponente (Typbibliothek), die man nutzen kann, sobald der Reader installiert ist? Dürfte doch besser sein als der Weg über den IE.
genau,

delphi > komponente > ActiveX Control importieren
im folgenden dialog das Control "Adobe Acrobat x.0 Browser Control Library" installieren.

aenogym
übrigens: netter avatar, smiley
Steffen Rieke
Was nicht buzzt, wird buzzend gemacht!
http://blog.base-records.de
http://www.base-records.de
  Mit Zitat antworten Zitat
Benutzerbild von Smiley
Smiley

Registriert seit: 9. Dez 2004
Ort: Gedern
205 Beiträge
 
Delphi 10.4 Sydney
 
#6

Re: Webbroser Componente zum PDF-Anzeigen

  Alt 11. Jul 2005, 20:42
Das mit dem activX habe ich oben schon erwähnt, ist aber sehr aufwendig, wenn man es für mindestens 3 verschiedene Acrobat Reader Versionen schreiben muss und nicht weiß welche auf dem system gerade läuft.
Dazu kommt noch, dass es ab Acrobat7 kein activeX mehr gibt, sondern nur ein .dll
Wenn einer die verschiedenen Varianten für wenigstens 3 Versionen in den Griff bekommt, dann wäre das eine Lösung.
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.171 Beiträge
 
Delphi 10.4 Sydney
 
#7

Re: Webbroser Componente zum PDF-Anzeigen

  Alt 12. Jul 2005, 07:21
Zitat von MathiasSimmack:
Gibt´s nicht ´ne direkte Komponente (Typbibliothek), die man nutzen kann, sobald der Reader installiert ist? Dürfte doch besser sein als der Weg über den IE.
Theoretisch ja. Aber Adobe garantiert die Lauffähigkeit nur im IE. Alles andere ist Zufall. Deswegen hat Adobe auch die Schnittstelle im Reader 7 komplett geändert, so das alle bisherigen auf diesen Weg laufenden Programme nicht mehr funktionieren.

@Smiley:
Was heißt beenden? Hängt sich der Reader im IE auf? Hast du evtl. die .0er-Versionen installiert. Vor allem die 6.0er-Version ohne Updates ist absoluter Mist. Einfach die passenden Updates installieren und ein Vielzahl der Probleme sind gelößt.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Benutzerbild von Smiley
Smiley

Registriert seit: 9. Dez 2004
Ort: Gedern
205 Beiträge
 
Delphi 10.4 Sydney
 
#8

Re: Webbroser Componente zum PDF-Anzeigen

  Alt 12. Jul 2005, 19:14
Mein Windows und IE ist immer auf dem neuesten Stand, daran kann es nicht liegen.

Des öfteren bleibt nach dem Verlassen meines Programmes immer noch ein Acroread32 im Taskmanager stehen, obwohl auf dem Bildschirm nichts vom AcrobatReader zu sehen ist (Auch nicht in der Takleiste).
Wenn mein Programm dann wieder aufgerufen wird und etwas anzeigen will, hängt das Programm fest.
Im Delphi2005 habe ich im Startbildschirm, wenn ich eine .pdf Datei anklicke, links daneben eine Vorschau gesehen, da wird doch auch kein AcrobatReader aufgerufen, das geht ganz schnell, wie machen die das.
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.171 Beiträge
 
Delphi 10.4 Sydney
 
#9

Re: Webbroser Componente zum PDF-Anzeigen

  Alt 13. Jul 2005, 07:48
Zitat von Smiley:
Des öfteren bleibt nach dem Verlassen meines Programmes immer noch ein Acroread32 im Taskmanager stehen, obwohl auf dem Bildschirm nichts vom AcrobatReader zu sehen ist (Auch nicht in der Takleiste).
Wenn mein Programm dann wieder aufgerufen wird und etwas anzeigen will, hängt das Programm fest.
Ist normal. Ist Acrobat. Evtl. einfach mal komplett deinstallieren und neu installieren.

Zitat von Smiley:
Im Delphi2005 habe ich im Startbildschirm, wenn ich eine .pdf Datei anklicke, links daneben eine Vorschau gesehen, da wird doch auch kein AcrobatReader aufgerufen, das geht ganz schnell, wie machen die das.
Hast du evtl. die Adobe-Vollversion installiert?
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#10

Re: Webbroser Componente zum PDF-Anzeigen

  Alt 13. Jul 2005, 07:49
Hallo Smiley,

keine Ahnung, wie Borland das in Delphi 2005 macht, aber du könntest dir für 250 Euronen eventuell eine Menge Ärger sparen...

Schau mal hier: WPViewPDF
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:36 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