befehl zum starten von programmen (c++)

Hi
Weiß jemand einen befehl unter c++ womit man programme starten kann?
z.B. test.exe startet beim start C:\bla.exe .
Und wie kann ich dann da noch Parameter hinterhengen?
 
Hi !!

Die einfachste Möglichkeit ist ein Funktionsaufruf in folgender Form:

system (char *command)

Der Parameter command kann alles enthalten was man auch in ein Dosfenster eingeben kann. Die Funktion ist in der stdlib.h deklariert. Die Funktion kannst du aber nur bei Konsolenanwendungen benutzen.

Innerhalb einer Win32 Applikation wäre die einfachste Möglichkeit die API-Funktion:

UINT WinExec( LPCSTR lpCmdLine, UINT uCmdShow );

lpCmdLine enthält hier den Programmnamen und ggf. die Parameter. Bei uCmdShow übergibst du einfach SW_SHOW oder den letzten Parameter der WinMain Funktion.

Die Verwendung von WinExec ist allerdings nicht wirklich empfehlenswert, weil diese Funktion eigentlich nur aus 16Bit Kompatibilitätsgründen existiert und sie öffnet die Anwendung auch nicht in einem eigenen Prozess.

Wenn du es unter Win32 richtig machen willst solltest du dir mal die CreateProcess Funktion anschauen. Einfach bei Google eingeben.

mgG, Softrunner
 
ich bin ein ziemlicher nap. :)

Wollte jetzt die variante der konsolenanwendung ausprobieren.
Muss ich jetzt command noch vorher als variable definieren oder so weil
wenn ich statt command nur hinschreibe bla.exe oder so bekomm ich immer die fehlermeldung das dass * weg muss.
kanst du mir vielleicht ein beispiel geben wo c:\bla.exe gestartet wird.
 
Zurück
Oben