![]() |
Re: PDF aus Delphi heraus öffnen
Wahrscheinlich gibt es mehrere Möglichkeiten pdf-Files zuzuordnen. Bringt aber nichts auf dem Shellexecute zu bestehen. Dann bleibt das ActiveX. Bei VB gab es auch die Möglichkeit die ActiveX im Programmverzeichnis zu halten. Dann brauchte man d nichts zu installieren. Dann hättest Du alle Komponenten selbst zur Verfügung.
Grüße // Martin |
Re: PDF aus Delphi heraus öffnen
Oje danke, also ActiveX hatte ich auch nicht vor einzubinden vor allem nur wegen einer Verknüpfung zu einer Datei. :(
|
Re: PDF aus Delphi heraus öffnen
Wie sieht's denn in deiner Registry unter "HKEY_CLASSES_ROOT\pdf_auto_file\shell\Open" aus?
|
Re: PDF aus Delphi heraus öffnen
:hi: Flocke
Es hat sich soeben gelöst, nach ewigem Suchen bin ich auf folgende Prozedur gestoßen. Gefunden habe ich sie sogar ![]()
Delphi-Quellcode:
Und mit dieser geht's. :hello:
uses
ShellAPI; [...] procedure ExecuteProgramm(const PFileName: string); var SEInfo: TShellExecuteInfo; ExitCode: DWORD; ExecuteFile: string; begin ExecuteFile:=PFileName; FillChar(SEInfo, SizeOf(SEInfo), 0); SEInfo.cbSize := SizeOf(TShellExecuteInfo); with SEInfo do begin fMask := SEE_MASK_NOCLOSEPROCESS; Wnd := Application.Handle; lpFile := PChar(ExecuteFile); nShow := SW_SHOWNORMAL; end; if ShellExecuteEx(@SEInfo) then begin repeat Application.ProcessMessages; GetExitCodeProcess(SEInfo.hProcess, ExitCode); until (ExitCode <> STILL_ACTIVE) or Application.Terminated; end else begin Application.MessageBox('Fehler beim Starten des Programms', 'Programm Starten', mb_OK+mb_IconError); end; end; Danke für eure Hilfe. :) |
Re: PDF aus Delphi heraus öffnen
KLASSE ! Gut gemacht Matze!
Die Idee das als Dokumentation und eventuell Hilfeersatz zu nehmen ist ehedem prima. Na vielleicht kann man dem Windows-Handle auch noch die Tastendrücke zum gewünschten Suchbegriff oder zur Zielseite mitgeben. Und dann noch bei uns in der DP gefunden ! Find ich gut :P und viele Grüße // Martin |
Re: PDF aus Delphi heraus öffnen
Zitat:
Prima! Danke |
Re: PDF aus Delphi heraus öffnen
Zitat:
Ich habe mein Prog in irgendeinem Verzeichnis liegen c:\...\Prog die pdfs, die ich anzeigen möchte, liegen in einem Verzeichnis darunter, also c:\...\Prog\doku Bei der oben vorgestellten Lösung wird doch eine absolute Adresse verlangt. Wie kann ich erreichen, dass die pdf-Dateien in egal-welchem-Verzeichnis gefunden werden, also meinetwegen sowohl auf e:\meineProg\Prog\Doku als auch auf "d:\prog\Doku"? Ich habe in Erinnerung, dass es irgendwelche Parameter gibt. ApplicationPath oder so. Aber: wie heißen die genau, und wie setze ich sie ein? |
Re: PDF aus Delphi heraus öffnen
Das übergeordnete Verzeichnis kannst du so ermitteln:
Delphi-Quellcode:
Ob das die sauberste Lösung ist, kann ich dir nicht sagen.
Pfad := ExtractFilePath(ExcludeTrailingPathDelimiter(Pfad));
Den Pfad zu deiner Anwendung erhälst du so:
Delphi-Quellcode:
Aber zukünftig bitte die Suche benutzen oder einen neuen Thread erstellen.
ExtractFilePath(ParamStr(0))
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:09 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz