AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

PDF aus Delphi heraus öffnen

Ein Thema von Matze · begonnen am 26. Dez 2005 · letzter Beitrag vom 6. Jan 2006
Antwort Antwort
Seite 1 von 4  1 23     Letzte »    
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#1

PDF aus Delphi heraus öffnen

  Alt 26. Dez 2005, 17:38
Hallo

Ich versuche über

Delphi-Quellcode:
ShellExecute(Application.Handle, 'open', PChar('"' + FileDir + 'helpfile.pdf' + '"'),
  nil, nil, SW_NORMAL);
eine PDF Datei zu öffnen. GetLastError meldet mir nun:

Zitat:
Der angegebenen Datei ist keine Anwendung zugeordnet
Vom Explorer heraus kann ich die PDF per Doppelklick ganz normal im Adobe Reader öffnen. Wie kommt so eine Meldung zustande? Weder Google, noch die DP liefert mir eine Lösung, das scheint ein nicht allzu häufig auftretender Fehler zu sein.
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.117 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: PDF aus Delphi heraus öffnen

  Alt 26. Dez 2005, 17:53
Moin Matze,

laut Dokumentation von ShellExecute, spielt GetLastError hier keine Rolle.
Schau Dir doch noch mal die möglichen Rückgabewerte von ShellExecute an.

BTW:
Was liefert Dir denn

Assoc .pdf

zurück, wenn Du es in einer Konsole ausführst?
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#3

Re: PDF aus Delphi heraus öffnen

  Alt 26. Dez 2005, 17:59
Hallo Chris

Zitat von Christian Seehase:
Was liefert Dir denn

Assoc .pdf

zurück, wenn Du es in einer Konsole ausführst?
.pdf=pdf_auto_file

Auch unser Hai macht es so wie ich, nur mit SW_SHOW (klick), doch geht das bei mir auch nicht. Es passiert bei mir rein gar nichts.
  Mit Zitat antworten Zitat
Benutzerbild von Neutral General
Neutral General

Registriert seit: 16. Jan 2004
Ort: Bendorf
5.219 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#4

Re: PDF aus Delphi heraus öffnen

  Alt 26. Dez 2005, 18:07
Also bei mir liefert assoc .pdf z.B

 .pdf=AcroExch.Document das scheint mir so nach "Acrobat Reader Dokument" auszusehen..
Ansonsten geh mal im Explorer auf Extras-> Ordneroptionen->Dateitypen und such dir pdf aus und ordne pdf den Acrobat Reader zu.
Dann müsste es gehen denke ich.
Michael
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#5

Re: PDF aus Delphi heraus öffnen

  Alt 26. Dez 2005, 18:11
Da es aus dem Explorer, laut Matze, mit einem Doppelklick geht, ist dem Dateityp pdf auch der Reader als Anwendung zu geordnet.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#6

Re: PDF aus Delphi heraus öffnen

  Alt 26. Dez 2005, 18:11
Zitat von Neutral General:
das scheint mir so nach "Acrobat Reader Dokument" auszusehen..
Ansonsten geh mal im Explorer auf Extras-> Ordneroptionen->Dateitypen und such dir pdf aus und ordne pdf den Acrobat Reader zu.
Dann müsste es gehen denke ich.
Die PDF muss aber mit den Adobe Reader verknüpft sein, sonst könnte ich sie aus dem Explorer heraus nicht öffnen. In den Ordneroptionen ist der Adobe Reader 7.0 zugewiesen. Außerdem kann ich dem Anwender auch nicht zumuten, in den Ordneroptionen rumfummeln zu müssen.
  Mit Zitat antworten Zitat
Benutzerbild von mschaefer
mschaefer

Registriert seit: 4. Feb 2003
Ort: Hannover
2.032 Beiträge
 
Delphi 12 Athens
 
#7

Re: PDF aus Delphi heraus öffnen

  Alt 26. Dez 2005, 19:36
Moin moin, zusammen

also normalerweise würde ich das auch so angehen wie Matze geschildert hat, aber das Problem kann bei Acrobat liegen.
Probier mal erst den Acrobat zu starten und dann das PDF:

Delphi-Quellcode:
 ShellExecute(0, 'Open', PChar('C:\Program Files\Adobe\Acrobat 7.0\Reader\AcroRd32.exe'), PChar(''), PChar(''), SW_Hide);
 ShellExecute(0, 'Open', PChar('C:\...\prices.pdf'), PChar(''), PChar(''), SW_Normal);
Über die Schöheit / Grausamkeit dieser Lösung brauchen wir aber nicht zu diskutieren.
Wie man aber auf eine bestimmte Seite navigiert da habe ich immer noch keine Ahnung...


Grüße // Martin



PS: Du kanst natürlich PDF auch im TWebBrowser öffnen
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
  webbrowser1.Navigate('c:\..\MyPDFFile.pdf');
end;
Martin Schaefer
  Mit Zitat antworten Zitat
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#8

Re: PDF aus Delphi heraus öffnen

  Alt 26. Dez 2005, 22:06
Hallo Martin,

deine erste Lösung startet zwar den Adobe Reader, jedoch im Hintergrund, d.h. ohne GUI Doch möchte ich diesen Weg nicht gehen, da nicht jeder den Adobe Reader zum anzeigen von PDF-Dateien nutzt. Und TWebBrowser integrieren muss auch nicht sein, nur um eine PDF öffnen zu können.

Ich bin echt ratlos und kann mir das absolut nicht erklären.


Nachtrag: Achso SW_HIDE, klar sehe ich den nicht. Aber es würde auch nicht gehen.
  Mit Zitat antworten Zitat
Benutzerbild von mschaefer
mschaefer

Registriert seit: 4. Feb 2003
Ort: Hannover
2.032 Beiträge
 
Delphi 12 Athens
 
#9

Re: PDF aus Delphi heraus öffnen

  Alt 26. Dez 2005, 22:18
Matze ich habe Dein Problem irgendwo schonmal gesehen und da war die einhellige Meinung, dass es an Acrobat liegt.
Mir würde da leider nur was kommerzielles Einfallen...

Grüße // Martin
Martin Schaefer
  Mit Zitat antworten Zitat
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#10

Re: PDF aus Delphi heraus öffnen

  Alt 26. Dez 2005, 22:28
Zitat von mschaefer:
Mir würde da leider nur was kommerzielles Einfallen...
Danke, doch das kommt für mich nicht in Frage, da ich das für ein Freeware-Programm benötige und es daher nicht einsehe, groß geld dafür auszugeben.

Gibt es denn absolut keine andere Möglichkeit? Vom Explorer kann ich diese Datei ja auch öffnen und da passiert bestimmt auch nichts anderes, als dass dem Reader über den Parameter der Pfad zur Datei übermittelt wird.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 4  1 23     Letzte »    


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 15:06 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