Programm über Qt öffnen und Task wechseln?

Alles rund um die Programmierung mit Qt
Antworten
grid
Beiträge: 23
Registriert: 7. September 2008 18:28

Programm über Qt öffnen und Task wechseln?

Beitrag von grid »

Hallo.

Gibt es in Qt eine einfache Möglichkeit ein Programm, beispielsweise Windows-Paint, über C++ zu öffnen?

Kleiner Haken bei der Sache:
Wenn bereits eine Instanz dieses Programms läuft soll nur zum entsprechenden Task gewechselt werden ^^

beste Grüße
macman
Beiträge: 1738
Registriert: 15. Juni 2005 13:33
Wohnort: Gütersloh
Kontaktdaten:

Re: Programm über Qt öffnen und Task wechseln?

Beitrag von macman »

grid hat geschrieben:Gibt es in Qt eine einfache Möglichkeit ein Programm, beispielsweise Windows-Paint, über C++ zu öffnen?
QProcess
grid hat geschrieben:Wenn bereits eine Instanz dieses Programms läuft soll nur zum entsprechenden Task gewechselt werden
Wenn das Programm das nicht von selbst macht, dann bleibt nur ein systemabhängiger Weg. Mit Qt gibt es da nichts.
Die deutsche Schriftsprache ist case-sensitive. Außerdem gibt es eine Interpunktionsnorm. Wenn manch einer seine Programme genauso schlampig schreibt, wie sein Posting hier, dann sollte er es lieber bleiben lassen.
grid
Beiträge: 23
Registriert: 7. September 2008 18:28

Re: Programm über Qt öffnen und Task wechseln?

Beitrag von grid »

macman hat geschrieben:
grid hat geschrieben:Gibt es in Qt eine einfache Möglichkeit ein Programm, beispielsweise Windows-Paint, über C++ zu öffnen?
QProcess
grid hat geschrieben:Wenn bereits eine Instanz dieses Programms läuft soll nur zum entsprechenden Task gewechselt werden
Wenn das Programm das nicht von selbst macht, dann bleibt nur ein systemabhängiger Weg. Mit Qt gibt es da nichts.
...vielen Dank.
Hmmm... ja mal schauen wieviele Programme dies von alleine tun... der FireFox macht's schonmal nicht^^
upsala
Beiträge: 3946
Registriert: 5. Februar 2006 20:52
Wohnort: Landshut
Kontaktdaten:

Beitrag von upsala »

Das hat normalerweise jede Anwendung von sich aus zu verwalten.
macman
Beiträge: 1738
Registriert: 15. Juni 2005 13:33
Wohnort: Gütersloh
Kontaktdaten:

Beitrag von macman »

upsala hat geschrieben:Das hat normalerweise jede Anwendung von sich aus zu verwalten.
Naja, auf nem Mac musst Du schon Klimmzüge anstellen, um an eine zweite Instanz eines Programms zu bekommen. Da stellt sich das BS quer :-)
Die deutsche Schriftsprache ist case-sensitive. Außerdem gibt es eine Interpunktionsnorm. Wenn manch einer seine Programme genauso schlampig schreibt, wie sein Posting hier, dann sollte er es lieber bleiben lassen.
grid
Beiträge: 23
Registriert: 7. September 2008 18:28

Beitrag von grid »

Hallo...

so ich hab jetzt mehrere Varianten ausprobiert, leider ohne Erfolg. Was mache ich denn hier falsch?

Code: Alles auswählen

QProcess::execute("C:\\Program Files\\Mozilla Firefox\\firefox.exe");
danke.
grid
Beiträge: 23
Registriert: 7. September 2008 18:28

Beitrag von grid »

grid hat geschrieben:Hallo...

so ich hab jetzt mehrere Varianten ausprobiert, leider ohne Erfolg. Was mache ich denn hier falsch?

Code: Alles auswählen

QProcess::execute("C:\\Program Files\\Mozilla Firefox\\firefox.exe");
danke.
ups...ok ich habs^^
Mann muss natürlich das ganze noch in "..." stecken, weils Leerzeichen beinhaltet.

Code: Alles auswählen

QProcess::execute(""C:\\Program Files\\Mozilla Firefox\\firefox.exe"");
macman
Beiträge: 1738
Registriert: 15. Juni 2005 13:33
Wohnort: Gütersloh
Kontaktdaten:

Beitrag von macman »

Man beachte aber den kleinen Unterschied zwischen QProcess::execute und QProcess::startDetached. Mir scheint als hättest Du den ignoriert, bzw. nicht wahr genommen.
Die deutsche Schriftsprache ist case-sensitive. Außerdem gibt es eine Interpunktionsnorm. Wenn manch einer seine Programme genauso schlampig schreibt, wie sein Posting hier, dann sollte er es lieber bleiben lassen.
grid
Beiträge: 23
Registriert: 7. September 2008 18:28

Beitrag von grid »

macman hat geschrieben:Man beachte aber den kleinen Unterschied zwischen QProcess::execute und QProcess::startDetached. Mir scheint als hättest Du den ignoriert, bzw. nicht wahr genommen.
Vielen Dank, diese Methode ist mir wirklich nicht aufgefallen.
Antworten