Rechercher : dans
Par :

Programme en C/C++ pour exectuer 2 programme

Dernière réponse le 31 jui 2007 à 10:06:51 lordglub, le 30 jui 2007 à 15:13:32 
 Signaler ce message aux modérateurs

Bonjour,

quelqu'un connaiterai la syntaxe en c ou c++ pour executer 2 autres programme independant??
Je ne veux rien renvoyer au programme initial jsute executer les deux autres programmes.
JE suis sous windows mais je ne veux pas faire de batch.

Merci

Configuration: Windows XP
Internet Explorer 7.0

Meilleures réponses pour « programme en C/C++ pour exectuer 2 programme » dans :
Langage C++ - Les fonctions VoirLa notion de fonction On appelle fonction un sous-programme qui permet d'effectuer un ensemble d'instructions par simple appel de la fonction dans le corps du programme principal. Les fonctions permettent d'exécuter dans plusieurs parties du...
Langage C - Les variables VoirLe concept de variable Une variable est un objet repéré par son nom, pouvant contenir des données, qui pourront être modifiées lors de l'exécution du programme. Les variables en langage C sont typées, c'est-à-dire que les données contenues dans...
Programme informatique VoirQu'est-ce qu'un programme informatique? Un programme informatique est une succession d'instructions exécutable par l'ordinateur. Toutefois, l'ordinateur ne sait manipuler que du binaire, c'est-à-dire une succession de 0 et de 1. Il est donc...

1

dubcek, le 30 jui 2007 à 15:50:15

En C, je ferais:
system("start prog1");
system("start prog2");

Répondre à dubcek

2

lordglub, le 30 jui 2007 à 16:38:16

J aimerai egalement le faire sous linux, j ai deja essayer la commande execvp, mais il lance juste le premeir programme et s arret dessus, si je ferme le premeir programme, il ne lance pas le second pour autant ...

char * argss []¸ = {"konkeror", NULL} ;
execvp ("konqueror", argss);

char * argss []¸ = {"kwrite", NULL} ;
execvp ("kwrite", argss);

en fait idealelement j aiemrai un programme +/- similaire sous linux et wuindows merci bien que windows soit ma priorité.

quelqu un sais comment utiliser execvp ou un equivalent.. ??

Répondre à lordglub

3

mamiemando, le 30 jui 2007 à 18:31:44

Si les deux doivent être lancés en parallèle, le plus simple c'est de faire un fork. Dans le processus père tu lances le premier programme (avec execvp par exemple), dans le processus fils le deuxième programme.

Rien ne t'empêche de mettre des sections de codes qui diffèrent selon l'OS, et de passer un #define à la compilation. Exemple :

#include <iostream>
int main(){
#ifdef LINUX
  std::cout << "compilé pour linux" << std::endl;
#elif WINDOWS
  std::cout << "compilé pour windows" << std::endl;
#endif
  //...
  std::cout << "au revoir" << std::endl;
  return 0;
}

Pour compiler sous linux :
g++ -W -Wall -DLINUX plop.cpp

... même principe sous windows.

Bonne chance

Répondre à mamiemando

4

bizon38, le 31 jui 2007 à 07:14:08

Salut,

J'ai le même besoin de lancer un second programme sous windows. Mon problème est que l'execution du second programme ouvre une fenetre de command (style DOS) et qu'on perd le focus sur l'interface de la 1ere applcation. Je n'ai pas accès au code de la première application. Si quelqu'un connait un moyen pour contourner le problème uniquement dans le second programme, merci d'avance.

A+

Répondre à bizon38

5

 mamiemando, le 31 jui 2007 à 10:06:51

Je crois (mais je suis pas sûre) que selon la manière dont tu l'exécutes (system ou execvp) dans un cas ça s'affiche dans l'autre non. Mais vu que ça fait plusieurs années que je n'ai pas codé sous windows en fait je n'en suis pas sûre. Tu peux toujours essayer, ça ne mange pas de pain.

Bonne chance

Répondre à mamiemando