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 :

Appeler un executable dans une autre application


Sujet :

C++

  1. #1
    Membre régulier Avatar de highlight
    Homme Profil pro
    Développeur multimédia
    Inscrit en
    Novembre 2008
    Messages
    139
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur multimédia

    Informations forums :
    Inscription : Novembre 2008
    Messages : 139
    Points : 101
    Points
    101
    Par défaut Appeler un executable dans une autre application
    Bonjour tout le monde, j'ai besoin de votre aide svp,je vous explique mon probleme: Avez vous une idée de comment utiliser un executable qui fait biensur en C/C++ dans une autre application en C/++? car je veux appeler un executble dans mon soft que j ai fait en C/C++, j espere que ma question est claire pour vous bonne journée a tous

  2. #2
    Invité
    Invité(e)
    Par défaut
    En utilisant system(), bien que ce soit moyennement portable?

  3. #3
    Membre expert Avatar de jabbounet
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Juin 2009
    Messages
    1 909
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Juin 2009
    Messages : 1 909
    Points : 3 284
    Points
    3 284
    Par défaut
    Je ne sais pas sur quel os tu es, mais sur les unix tu as tout un tas de commande systèmes C pour cela (popen / system / exec ...)

    http://www.linux-kheops.com/doc/man/...3/popen.3.html
    http://www.linux-kheops.com/doc/man/.../system.3.html
    http://www.linux-kheops.com/doc/man/...n3/exec.3.html


    Comme tu as accès aux sources de la seconde application tu as une autre option qui consiste à créer un librairie à partir des sources de cet exécutable (un .so ou un dll).

    Après il suffira d'inclure les header (.h) et de te linker avec au moment de la compilation.

    http://www.faqs.org/docs/Linux-HOWTO...ary-HOWTO.html
    http://msdn.microsoft.com/en-us/libr...92(VS.85).aspx

    cette seconde solution à l'avantage de t'éviter de passer par des commandes systèmes qui sont souvent dépendante de l'OS
    bazar: http://www.improetcompagnie.com/publ...ctacles-6.html

    BÉPO la disposition de clavier francophone, ergonomique et libre: http://bepo.fr/wiki/Accueil

    Emacs Wiki: http://www.emacswiki.org/

    En attente de ce que produira: http://www.pushmid.com

  4. #4
    Membre régulier Avatar de highlight
    Homme Profil pro
    Développeur multimédia
    Inscrit en
    Novembre 2008
    Messages
    139
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur multimédia

    Informations forums :
    Inscription : Novembre 2008
    Messages : 139
    Points : 101
    Points
    101
    Par défaut
    Merci pour ta reponse peux tu etre clair stp, as tu un exemple puisque je suis debutant

  5. #5
    Membre régulier Avatar de highlight
    Homme Profil pro
    Développeur multimédia
    Inscrit en
    Novembre 2008
    Messages
    139
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur multimédia

    Informations forums :
    Inscription : Novembre 2008
    Messages : 139
    Points : 101
    Points
    101
    Par défaut
    ---->jabbounet: je suis sous windows

  6. #6
    Invité
    Invité(e)
    Par défaut
    C'est une fonction de la library standard du C

    Tu peux appeller n'importe quel commande de ton systeme avec(dir,...) .Pour un executable:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    system("C:/mon/chemin/vers/mon/executable.exe");
    Si je ne me trompe pas c'est l'équivalent(sous Windows) d'Exécuter du menu Démarrer.

  7. #7
    Membre régulier Avatar de highlight
    Homme Profil pro
    Développeur multimédia
    Inscrit en
    Novembre 2008
    Messages
    139
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur multimédia

    Informations forums :
    Inscription : Novembre 2008
    Messages : 139
    Points : 101
    Points
    101
    Par défaut
    Merci Joe je vais essayé ce que tu viens me suggeré, je sais bien comment utilisé l executable sur MS DOS mais j'ai aucune idée de l utilisé dans mon code que j'ai fait en C/C++ c est ça mon probleme

  8. #8
    Membre expert Avatar de jabbounet
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Juin 2009
    Messages
    1 909
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Juin 2009
    Messages : 1 909
    Points : 3 284
    Points
    3 284
    bazar: http://www.improetcompagnie.com/publ...ctacles-6.html

    BÉPO la disposition de clavier francophone, ergonomique et libre: http://bepo.fr/wiki/Accueil

    Emacs Wiki: http://www.emacswiki.org/

    En attente de ce que produira: http://www.pushmid.com

  9. #9
    Membre régulier Avatar de highlight
    Homme Profil pro
    Développeur multimédia
    Inscrit en
    Novembre 2008
    Messages
    139
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur multimédia

    Informations forums :
    Inscription : Novembre 2008
    Messages : 139
    Points : 101
    Points
    101
    Par défaut
    Merci jabbounet mais franchement je me perds dans les details

  10. #10
    Invité
    Invité(e)
    Par défaut
    Tu n'as pas compris, le code que je t'ai montré est du C;voici un petit programe l'utilisant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    #include <cstdlib>
    int main(int argc, char** argv)
    {
        std::system("C:/mon/chemin/vers/mon/executable.exe");
    }
    Plus de détails ici

  11. #11
    Membre régulier Avatar de highlight
    Homme Profil pro
    Développeur multimédia
    Inscrit en
    Novembre 2008
    Messages
    139
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur multimédia

    Informations forums :
    Inscription : Novembre 2008
    Messages : 139
    Points : 101
    Points
    101
    Par défaut
    Merci Joe je vais voir

  12. #12
    Membre régulier Avatar de highlight
    Homme Profil pro
    Développeur multimédia
    Inscrit en
    Novembre 2008
    Messages
    139
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur multimédia

    Informations forums :
    Inscription : Novembre 2008
    Messages : 139
    Points : 101
    Points
    101
    Par défaut
    Merci encore a toi Joe ça marche hypercool mais si je veux utilisé une ligne de commande de faire qlq chose, je m explique:

    l'.exe que j utilise est imageMagick, enfin peut importe,

    je tape par exemple la commande suivante sous MS dos:

    "compare test.png test1.jpg diff.jpg" et il fait une comparaison si je veux faire la meme chose sous mon application comment ferais je, apres avoir utiliser la commande system('.............") ?

  13. #13
    Membre expert Avatar de jabbounet
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Juin 2009
    Messages
    1 909
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Juin 2009
    Messages : 1 909
    Points : 3 284
    Points
    3 284
    Par défaut
    imagemagic te fournit un api c++ que tu peux utiliser directement

    http://www.imagemagick.org/Magick++/
    http://www.imagemagick.org/Magick++/...+_tutorial.pdf


    Ce sera un piste a étudier uniquement si tu compte faire un utilisation intense et plus poussée d'imagemagic


    si tu as juste besoin de lancer compare sur quelques fichiers, std::system devrait suffire.
    bazar: http://www.improetcompagnie.com/publ...ctacles-6.html

    BÉPO la disposition de clavier francophone, ergonomique et libre: http://bepo.fr/wiki/Accueil

    Emacs Wiki: http://www.emacswiki.org/

    En attente de ce que produira: http://www.pushmid.com

  14. #14
    Membre régulier Avatar de highlight
    Homme Profil pro
    Développeur multimédia
    Inscrit en
    Novembre 2008
    Messages
    139
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur multimédia

    Informations forums :
    Inscription : Novembre 2008
    Messages : 139
    Points : 101
    Points
    101
    Par défaut
    je veux juste cacluer le PSNR (une valeur de comparaison entre deux images) enfin bref ce que je veux dire que c'est pas la peine de me plongé sur la bibliotheque tout entiere tu vois?

Discussions similaires

  1. Cliquer sur un bouton dans une autre application
    Par FredericB dans le forum C++Builder
    Réponses: 16
    Dernier message: 10/05/2008, 18h23
  2. Probleme appel de fct dans une autre classe
    Par crakotte_finance dans le forum C++
    Réponses: 6
    Dernier message: 09/10/2006, 22h22
  3. Réponses: 3
    Dernier message: 08/10/2006, 12h05
  4. Coller dans une autre application
    Par johweb dans le forum Delphi
    Réponses: 4
    Dernier message: 21/06/2006, 15h47
  5. Envoyer du texte dans une autre application (ou send key)
    Par Coussati dans le forum API, COM et SDKs
    Réponses: 3
    Dernier message: 10/02/2006, 16h26

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