Entwickler-Ecke

Dateizugriff - Öffnen einer Datei mit Delphi


JungerIslaender - Di 18.03.08 21:05
Titel: Öffnen einer Datei mit Delphi
Hi
wie kann ich mit delphi eine text datei öffnen??
Damit meine ich: wenn ich auf den button Hilfe drücke, wird die datei hilfe.txt geöffnet(mit wordpad).


Moderiert von user profile iconChristian S.: Topic aus VCL (Visual Component Library) verschoben am Di 18.03.2008 um 20:10


Xentar - Di 18.03.08 21:22

Du meinst, du möchtest die Datei mit einem anderen Programm öffnen?

Such mal nach ShellExecute


JungerIslaender - Di 18.03.08 21:58

Alos da hab ich jetzt das hier gefunden: ShellExecute(Application.Handle,'open',<HTML>,nil,nil,SW_SHOW);

Da sagt er mir aber: [Fehler] Unit1.pas(259): Undefinierter Bezeichner: 'ShellExecute'

Also pls help me.


JungerIslaender - Di 18.03.08 22:08

So hab jetzt gesehen, dass ich shellapi zu uses hinschreiben muss. Gesagt getan.(Woher soll man dass auch wissen)
Dennoch passiert nachdem ich den Button gedrückt habe nichts.


Delphi-Quelltext
1:
ShellExecute(Application.Handle,'open','Hilfe.txt',nil,nil,SW_SHOW);                    


Xentar - Di 18.03.08 22:25

Du solltest auch den Pfad mit angeben, nicht einfach nur den Dateinamen.


Hidden - Di 18.03.08 23:21

Hi,

Wenn sich die Hilfe im Selben Ordner/einem Unterordner desselben Ordners befindet wie das Programm geht das so:

Delphi-Quelltext
1:
extractfilepath(paramstr(0));  //Pfad der ausgeführten Exe ermitteln                    


mfG,


ZSKing - Mo 24.03.08 00:09

Ich will einen simplen Updater in mein Programm implementieren. Ich habe mir das so vorgestellt, dass das Hauptprogramm die Updater.exe öffnet und die dann das neueste downloadet und in das richtige Verzeichnis packt... Weil intern geht es ja nicht, wenn das Programm geöffnet ist! :)

Naja egal da müsst ihr euch ja nicht drum kümmern, aber ich habe mit dem Aufrufen der Updater.exe Probleme:


Delphi-Quelltext
1:
2:
pfad := ExtractFilePath(Application.ExeName);
ShellExecute(Application.Handle,'open',pfad+'Updater.exe',nil,nil,SW_SHOW);


Da zeigt er mir inkompatible Typen an... Wie soll ich das gestalten?
Danke, ZSKing


Marc. - Mo 24.03.08 00:43

Wenn ich mich recht entsinne, musst Du den übergebene String Deines Pfades zusächlich Type-Casten via PChar(). ;)

Cheers,
Marc.


JungerIslaender - Mo 31.03.08 16:31

SO wie genau müsste jetzt der Quelltext lauten(nachdem ich die shellapi in die uses geschrieben hab) damit ich die Datei Hilfe.txt mit dem standard Browser oder Editor öfnnen kann.


Timosch - Mo 31.03.08 16:44


Delphi-Quelltext
1:
ShellExecute(handle,PChar('open'),PChar('hilfe.txt'),PChar(''),PChar(ExtractFilePath(Application.Exename)),SW_SHOW);                    

Eigentlich ist die Funktion doch gut dokumentiert...