Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi FindExecutable und PhotoViewer.dll (https://www.delphipraxis.net/123508-findexecutable-und-photoviewer-dll.html)

Willie1 3. Nov 2008 14:46


FindExecutable und PhotoViewer.dll
 
Hallo Leute,
ich will aus einem eigenen Programm das Prg zum Öffnen von JPG's aufrufen. Ich benutze FindExecutable und das findet bei Vista PhotoViewer.dll. Wie kann ich PhotoViewer.dll zum Anzeigen von Bildern aus einem eigenen Prg aufrufen?

MfG
Willie1

chest3rs 3. Nov 2008 22:56

Re: FindExecutable und PhotoViewer.dll
 
Hallo Willie,

wie die Windows-Fotogalerie gestartet wird, findest du in der Registry heraus.

Unter "HKEY_CLASSES_ROOT\jpegfile\shell\open\command " findest du dann das gewünschte Kommando.

Zitat:

%SystemRoot%\System32\rundll32.exe "%ProgramFiles%\Windows Photo Gallery\PhotoViewer.dll", ImageView_Fullscreen %1
Hier solltest du die entsprechenden UmgebungsvariablenUmgebungsvariablen ersetzen und %1 durch den Dateinamen der Bilddatei austauschen.

mfg, Chester

Willie1 4. Nov 2008 08:38

Re: FindExecutable und PhotoViewer.dll
 
Hallo Chester,

danke für deinen Tipp.
das bedeutet, dass ich FindExecutable nicht benutzen kann! Es gibt also keine allgemeine Lösung, um das JPG-Bildern zugeordnete Prg aus einer eigenen Anwendung heraus zu öffnen?

Willie

DeddyH 4. Nov 2008 08:45

Re: FindExecutable und PhotoViewer.dll
 
Per ShellExecute wird AFAIK automatisch das zugeordnete Programm verwendet.

Willie1 4. Nov 2008 10:24

Re: FindExecutable und PhotoViewer.dll
 
Z.B. bei PhotoFiltre würde es mit FindExecutable funktionieren aber bei XP-Vista liefert es default "PhotoViewer.dll" zurück und das hilft nicht weiter - deshalb meine Frage nach einer allgemein gültigen Lösung.

Gr W.

DeddyH 4. Nov 2008 10:34

Re: FindExecutable und PhotoViewer.dll
 
Hast Du es mal mit ShellExecute versucht?

Willie1 4. Nov 2008 11:06

Re: FindExecutable und PhotoViewer.dll
 
DeddyH,
du hast recht, mit ShellExecute klappt es!!! Ich hatte mich an den Rat in diesem Forum gehalten, FindExecutable und CreateProcess zu benutzen, ShellExecute sollte nicht benutzt werden - so ergibt sich meine Frage.


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:56 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