CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

Executer une .exe en C++

dromar34
dromar34
Niveau 9
08 octobre 2005 à 11:25:14

Voila j´aimerais savoir cmment on fait pour executer un fichier .exe en C ou en C++ merci d´avance

gollumkawder
gollumkawder
Niveau 10
08 octobre 2005 à 11:36:28

Hum, en fait le code C/Cpp n´est pas compréhensible par ton ordinateur, seul toi et le compilateur le comprend. Donc via un logiciel de compilation tu va le transformer en fichier executable, plein de 0 et de 1 que ton ordinateur comprendra.

:d) Relis un cours de prog, tu es pas au point.
:d) Utilises un compilo, tu peux en trouver sur ce forum, ya des tonnes de liens.

dromar34
dromar34
Niveau 9
08 octobre 2005 à 11:42:42

Desoler j´ai pas ete tres claire, je m´explique:
on crée un exe en C/C++ pui quand on l´execute, cette exe nous propose d´ouvrir un autre fichier on le selectionne et l´exe choisi et lancé voila j´espere avoir ete plus claire et encore desoler

dromar34
dromar34
Niveau 9
08 octobre 2005 à 11:45:11

desoler avec toutes les fautes que j´ai fait c´est encore moins clair:
on crée un exe en C/C++ pui quand on l´execute, cette exe nous propose d´ouvrir un autre fichier.On le selectionne et l´exe choisi est lancé

dromar34
dromar34
Niveau 9
08 octobre 2005 à 12:08:18

ca doit pas etre possible :(

Bigloo
Bigloo
Niveau 10
08 octobre 2005 à 13:23:00

Ben si, c´est le même principe que l´explorer Windows par exemple.

Et je sais qu´on en a déjà parlé sur ce forum. Ca vient d´un topic Delphi mais peut-être que tu peux trouver de la documentation sur ces fonctions

1) WinExec
2) CreateProcess
3) ShellExecute

dnob700
dnob700
Niveau 10
08 octobre 2005 à 13:28:26

Oui, WinExec, est le plus simple pour faire celà car c´est une fonction prévue pour ce cas particulier où tu veux lancer un autre programme sans t´embêter.

CreateProcess fait la même chose mais te permet un cotnrole bien pllus grand sur ce que tu fait (il lui faut aussi bcp plus de paramètre) et ShellExecute permet de lancer n´importe quel fichier (pas seulement des .exe mais aussi des documents qui seront ouvert avec le programme par défaut pour les fichiers en question).

dromar34
dromar34
Niveau 9
08 octobre 2005 à 16:33:40

Ok merci a vous et bonne journée a tous :)

godrik
godrik
Niveau 30
11 octobre 2005 à 18:15:43

la fonction posix qui va t´aider:
exec (combiner a fork)

Ruffi
Ruffi
Niveau 9
16 octobre 2005 à 15:17:22

Maintenant, plus difficile :

Comment lancer un .exe, et en plus recuperer ce qui est affiché par la console?

Par exemple, j´ai mit le compilateur cg (cgc.exe) en External Tool sous visual, en cochant "use Output Window" afin qu´il m´affiche tout dans la fenetre de visual. Du coup, il n´ouvre plus une fenetre d´invite de commande qui se referme aussitot, mais affiche tout proprement comme quand on compile normalement.
En plus, ce gros malin arive meme a indiquer la ligne d´erreur quand Cg nous l´indique et qu´on click dessus.

Et j´aimerai faire pareille :)

Bigloo
Bigloo
Niveau 10
16 octobre 2005 à 16:07:25

"Comment lancer un .exe, et en plus recuperer ce qui est affiché par la console? "
-> popen() ?

dnob700
dnob700
Niveau 10
16 octobre 2005 à 16:15:17

Ca se fait à l´aide des "pipe".

Ce n´est pas très dur, mais le problème est que je n´ais pas la moindre idée de comment faire pour les utiliser conjointement à iostream.

Il y a un article sur la MSDN qui explique comment faire :
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dllproc/base/creating_a_child_process_with_redirected_input_and_output.asp

Pour le programme dont tu veux lire la sortie, ça ne change rien. Il continue à lire et écrire dans le flux standard (s´il est bien écrit) et il ne s´apercoit de rien.
Mais le programme qui lit cette sortie, doit être prévue pour et donc récupérer les bons fluxs. Ca doit être faisable avec la bibliothèque standard, mais je ne sais pas comment.

Pour l´exemple de la MSDN, la base est de bien voir que les fonctions writefile et readfile lisent depuis un descripteur de flux quelconque (en l´occurence le pipe créé entre les deux programmes) mais pas forcément depuis un fichier.

Ruffi
Ruffi
Niveau 9
16 octobre 2005 à 16:40:19

Merci :)

Bigloo
Bigloo
Niveau 10
16 octobre 2005 à 19:56:43

Pas popen() ?

dnob700
dnob700
Niveau 10
17 octobre 2005 à 00:07:44

Si aussi, c´est peut-être même plus simple à ce que j´en vois dans la msdn, mais je ne connaissais pas.

Bigloo
Bigloo
Niveau 10
17 octobre 2005 à 18:34:58

(Ah ouf)

godrik
godrik
Niveau 30
19 octobre 2005 à 16:20:38

les objets de iostream peuvent etre construit a partir d´un descripteur de fichier.
tu peux ainsi ouvrir un pipe et cree un std::ofstream

Sous forums
  • Aide à l'achat Mac
  • Macintosh
  • Création de sites web
  • Création de Jeux
  • Linux
  • Programmation
  • Internet
  • Steam Deck
  • Hardware
La vidéo du moment