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

MFC Discussion :

Lancer un executable à partir d'un exe


Sujet :

MFC

  1. #1
    Invité
    Invité(e)
    Par défaut Lancer un executable à partir d'un exe
    Bonjour,

    Je voudrais exécuter un exécutable Win32 à partir d'un programme Win32.
    L'éxécutable que je voudrais lancer est dans le même répertoire que celui sur lequel je suis en train de travailler.

    J'ai remarqué les fonctions "_exec..." dans msdn, mais je ne sais pas laquelle utiliser, et je ne trouve pas la syntaxe...

    Il y a le "system" aussi, mais c'est réservé aux applications console, je crois...

    Vous auriez une solution ? Je n'ai rien vu dans la FAQ et je n'ai pas trouvé de détails dans Google...

  2. #2
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Points : 17 323
    Points
    17 323
    Par défaut
    salut ,
    il vaudrai mieux utiliser shellexecute que system
    exemple d'appel avec shellexecute:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    ShellExecute(NULL, "open","mon.exe", "arg1 arg2", NULL, SW_SHOWNORMAL))<=(HINSTANCE)32);

  3. #3
    Invité
    Invité(e)
    Par défaut Répertoire de démarrage
    Merci !
    Effectivement, je viens de vérifier la syntaxe suivante qui fonctionne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    HINSTANCE nRetour = ShellExecute(0, NULL, "chemin...\\MonExe.exe", NULL, NULL, SW_SHOW);
    Par contre, j'ai un autre problème. Je suis en train d'écrire une appli Win32 et je ne trouve pas le chemin de mon 1er exécutable (j'en ai besoin pour spécifier le chemin du second exécutable que je veux appeler). (Normalement, c'est le 1er argument du main). Mon main ressemble à ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    int WINAPI WinMain(
      HINSTANCE hInstance,  // handle to current instance
      HINSTANCE hPrevInstance,  // handle to previous instance
      LPSTR lpCmdLine,      // pointer to command line
      int nCmdShow          // show state of window
    );
    Où est le répertoire de démarrage dans tout ça ?
    Je vais essayer de regarder lpCmdLine...

  4. #4
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Points : 17 323
    Points
    17 323
    Par défaut
    salut ,normalement dans lpCmdLine .


  5. #5
    Invité
    Invité(e)
    Par défaut [Resolu]
    C'est bon ! J'ai trouvé !

    Pour récupérer le répertoire de démarrage + le nom de l'exe, il suffit de taper la ligne suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    LPSTR s = GetCommandLine();
    s contient ce qu'il faut...

    Merci !

Discussions similaires

  1. lancer un executable à partir de java
    Par MariaDV dans le forum NetBeans
    Réponses: 1
    Dernier message: 17/03/2010, 14h29
  2. Réponses: 7
    Dernier message: 31/03/2007, 01h35
  3. Réponses: 1
    Dernier message: 04/08/2006, 12h31
  4. Lancer une dll à partir d'un exe
    Par jean.cdc dans le forum C
    Réponses: 17
    Dernier message: 25/07/2006, 17h44

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