IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 C++ Discussion :

Appel de programme


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre très actif
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2009
    Messages
    391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2009
    Messages : 391
    Par défaut Appel de programme
    Bonjour à tous ,

    j'ai une toute petite question à vous poser et je pense que vous n'aurez aucune difficulté à me répondre . J'ai cherché sur le net mais je trouve beaucoup de ligne de commande linux alors que moi je cherche une instruction C++ lol.

    Quelle genre d'instruction C++ doit-on utiliser pour lancer un exécutable sous linux ? Je m'explique. J'ai créé quelques petits jeux sur linux en C++ avec la SDL (sous code blocks). Je les ai compilé en release et ça fonctionne. Cependant, j'aimerais créer un programme qui lance l'un de ces petits jeux de manières assez aléatoire.
    Donc il me faudrait un exemple d'une instruction C++ qui lance un programme .

    Merci d'avance

  2. #2
    Membre éclairé
    Inscrit en
    Mai 2005
    Messages
    348
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 348
    Par défaut
    Regarde du coté de l'appel system().

  3. #3
    Membre très actif
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2009
    Messages
    391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2009
    Messages : 391
    Par défaut
    Citation Envoyé par Sunsawe Voir le message
    Regarde du coté de l'appel system().
    Salut, merci pour ta réponse .
    Pour ceux qui cherchent voici un exemple de code. Il faut remplacer "dir" par l'instruction system voulu .

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    #include <stdio.h>
    #include <stdlib.h>
     
    int main ()
    {
      int i;
      printf ("Checking if processor is available...");
      if (system(NULL)) puts ("Ok");
        else exit (1);
      printf ("Executing command DIR...\n");
      i=system ("dir");
      printf ("The value returned was: %d.\n",i);
      return 0;
    }

  4. #4
    Membre expérimenté Avatar de Rewpparo
    Homme Profil pro
    Amateur
    Inscrit en
    Décembre 2005
    Messages
    170
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Amateur

    Informations forums :
    Inscription : Décembre 2005
    Messages : 170
    Par défaut
    Pour construire un peu sur le sujet, je me suis toujours demandé comment faire une frontend pour un programme en ligne de commande. Notamment comment récupérer l'output d'un programme pour le traiter et, par exemple, l'afficher sous forme graphique.
    Je pense qu'on peut utiliser system() avec un > derrière pour dumper l'output vers un fichier, qu'on peut ensuite utiliser. Est-ce portable ? Est-ce la manière canonique de faire ? Ou est il possible de faire mieux ?

  5. #5
    Membre éprouvé
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    2 766
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 766
    Par défaut
    Citation Envoyé par Rewpparo Voir le message
    Pour construire un peu sur le sujet, je me suis toujours demandé comment faire une frontend pour un programme en ligne de commande. Notamment comment récupérer l'output d'un programme pour le traiter et, par exemple, l'afficher sous forme graphique.
    Je pense qu'il faut creuser du côté des flux (que je connais très mal). Il doit y avoir moyen rediriger cout vers un fichier.

  6. #6
    Membre émérite

    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    533
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 533
    Par défaut
    Citation Envoyé par Rewpparo Voir le message
    Pour construire un peu sur le sujet, je me suis toujours demandé comment faire une frontend pour un programme en ligne de commande. Notamment comment récupérer l'output d'un programme pour le traiter et, par exemple, l'afficher sous forme graphique.
    Je pense qu'on peut utiliser system() avec un > derrière pour dumper l'output vers un fichier, qu'on peut ensuite utiliser. Est-ce portable ? Est-ce la manière canonique de faire ? Ou est il possible de faire mieux ?
    Sous Qt il existe QProcess qui permet d'écouter les sorties standards d'un process. J'imagine que Boost.Interprocess fournit le même genre de service...

  7. #7
    Membre très actif
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2009
    Messages
    391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2009
    Messages : 391
    Par défaut
    Merci pour vos réponse supplémentaires

    J'ai tout de même une petite question supplémentaire et toujours en lien avec le sujet. Le code que j'ai affiché dans mon post précédent. Vous penser que ce qui est retourné dans "i" équivaut à quoi ? Je me demande s'il est possible de récupérer une valeur retournée par l'un des programme que j'appel :/. Vous avez une petite idée ?

    Merci d'avance

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Appel sous programme
    Par sam.fet dans le forum Linux
    Réponses: 2
    Dernier message: 17/08/2006, 12h20
  2. Appel de programme
    Par miron dans le forum C
    Réponses: 14
    Dernier message: 17/05/2006, 23h13
  3. Appeler un programme sur le poste client avec <object>
    Par ouioui2000 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 22/08/2005, 14h40
  4. [Kylix] pb d'appel de programme externe
    Par wizwiz dans le forum EDI
    Réponses: 2
    Dernier message: 27/08/2004, 09h29
  5. [langage] appel de programmes exterieurs
    Par martijan dans le forum Langage
    Réponses: 34
    Dernier message: 07/07/2003, 10h40

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo