Datei öffnen

hallo zusammen

ich habe in C++ folgendes problem:
mit den befehlen „system“ und „winexec“ kann ich anwendungen
starten. aber was muss ich eingeben, wenn ich anstatt einem
.exe file bsp. ein .html file öffnen will.
das funktioniert mit den oben genannten befehlen nicht.

danke für eure hilfe

marcel

hallo zusammen

Hallo

ich habe in C++ folgendes problem:
mit den befehlen „system“ und „winexec“ kann ich anwendungen
starten. aber was muss ich eingeben, wenn ich anstatt einem
.exe file bsp. ein .html file öffnen will.
das funktioniert mit den oben genannten befehlen nicht.

Kommt drauf an, was du mit z.B. der HTML-Datei machen willst - soll sie nur dargestellt werden, dann sollte es genügen, einfach auf der ‚Kommandozeile‘ die Datei mitzugeben . d.h. :
system(„netscape test.html“);
…ob das funktioniert hängt natürlich vom ‚Viewer-Programm‘ ab.

Fall du aber die Daten in deinem eigenen Programm ‚vertüdeln‘ willst, muß du die Datei schon eigenhändig öffnen und in einen dafür bereitgestellten Speicher schieben. In diesem Falle ist das natürlich etwas mehr Arbeit:

#include

main ()
{

std::list buffer;
std::ifstream in;

in.open(„Test.html“);

char ch;
while ( !in.eof() )
{
in >> ch;
buffer.push_bach(ch);
}

das war c++
…oder schau die mal CreateFile(…) in dem MSDN an - das ist dann eher c :wink:

Hi Marcel :smile:

Wenn du in Windows einen registrierten Dateityp, wie z.B. HTML-Dateien hast, dann kannst du diese immer mittels „start deteiname“ ausführen (geht glaube ich ab Win98). Windows startet dann automatisch das entsprechende Programm (im Falle von HTML-Dateien also den installierten Browser) und übergibt ihm die Datei zum Bearbeiten/Anzeigen … Dein Befehl muss also lauten:

system(„start egal.html“)

cu Stefan.

Hallo Marcel,

schau’ Dir einfach mal die Funktion ShellExecute() in der MSDN an.

–Mathias

Danke für Eure Hilfe!!!