Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Datei öffnen mit (https://www.delphipraxis.net/141704-datei-oeffnen-mit.html)

Blackshadow91 14. Okt 2009 13:12


Datei öffnen mit
 
Hallo DP,

Ich habe ein Problem.

Mit shellexecute kann man Dateien öffnen, ich will jedoch eine Datei nicht mit dem Standartprogramm öffnen, sondern mit einem ganz Speziellen. Im Windows geht das ganz einfach mit Rechtsklick auf die Datei + "öffnen mit".
Gibt es eine Möglichkeit dies auch mit Delphi hinzukriegen? Pfad der exe des Programms welche die Datei öffnen soll habe ich.
Die shellexecute Funktion habe ich schon studiert mit der scheint es nicht möglich zu sein.

Danke im Vorraus :)

s.h.a.r.k 14. Okt 2009 13:17

Re: Datei öffnen mit
 
du brauchst die anwendung selbst und dieser musst du dann die zu öffnende datei als pfad angeben! ich weiß leider nicht genau, wie es beim firefox geht, aber das hier sollte als anschauliches beispiel genügen (keine gewähr, dass das funktioniert):

c:\programme\mozilla firefox\firefox.exe -c:\test.html

somit musst du du firefox mit dem parameter "c:\test.html" aufrufen und alles andere geschieht von alleine. handelt es sich um ein spezielles programm, so kann es sein, dass etwas in der doku dazu steht.

DeddyH 14. Okt 2009 13:18

Re: Datei öffnen mit
 
Versuch es mal mit
Delphi-Quellcode:
ShellExecute(Handle,'open',PChar(<Pfad zum Programm>),PChar(<Pfad zur zu öffnenden Datei>),nil,SW_SHOW);
[edit] Eine Klammer zuviel [/edit]

Blackshadow91 14. Okt 2009 13:36

Re: Datei öffnen mit
 
Funktioniert beides nicht.
Bei DeddyH's Lösung öffnet es sich zwar, aber wieder nur mit dem Standartprogramm.
Bei s.h.a.r.k's Lösung öffnet sich garnichts, wobei ich die Idee gut fand.

Um nochmal mein vorhaben zu beschreiben, ich versuche ein skript mit der endung .ahk mit der exe Autohotkey.exe zu starten.
Wenn ich die exe von vorneherein als Standart benutze geht das auch wunderbar, nur will ich das Programm auch an Freunde schicken und ich hab keine Lust ihnen zu erklären, was sie zu tun haben bevor sie mein Programm richtig nutzen können.

DeddyH 14. Okt 2009 13:40

Re: Datei öffnen mit
 
Zeig doch mal Deinen Aufruf.

Blackshadow91 14. Okt 2009 13:46

Re: Datei öffnen mit
 
Delphi-Quellcode:
procedure TForm1.Button16Click(Sender: TObject);
begin

//s.h.a.r.k's Lösung
     ShellExecute(Application.Handle,'open',PChar('Autohotkey.exe -'+warkeysp+'\autowarkey\My_AutoWarkey_Script.ahk'),nil,PChar(warkeysp+'\Autowarkey\autohotkey'),sw_ShowNormal);

//DeddyH's Lösung
     ShellExecute(Application.Handle,'open',PChar('My_AutoWarkey_Script.ahk'),PChar(warkeysp+'\Autowarkey\autohotkey\autohotkey.exe'),PChar(warkeysp+'\Autowarkey'),sw_ShowNormal);

end;


warkeysp ist eine Variable in der der Pfad steht also die Pfade stimmen mit ziemlicher Sicherheit

DeddyH 14. Okt 2009 13:49

Re: Datei öffnen mit
 
Du hast bei meiner Lösung die Parameter verwechselt: zuerst das Programm und dann die Datei.

Blackshadow91 14. Okt 2009 13:52

Re: Datei öffnen mit
 
Ah okay.

Vielen Dank jetzt funktioniert es!
:)

s.h.a.r.k 14. Okt 2009 17:01

Re: Datei öffnen mit
 
DeddyH's praktische Lösung entspricht zudem meiner theoretischen Lösung, nur um das etwas klarer herauszustellen :mrgreen:

DeddyH 14. Okt 2009 19:02

Re: Datei öffnen mit
 
Jepp, nur hattest Du da ein Minuszeichen drin, das dürfte eigentlich unnötig sein :zwinker:


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:33 Uhr.
Seite 1 von 2  1 2      

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 by Thomas Breitkreuz