VC++ lancer un programme externe

Yunchi Messages postés 100 Date d'inscription lundi 30 octobre 2006 Statut Membre Dernière intervention 14 avril 2009 - 29 juin 2007 à 04:28
cs_rt15 Messages postés 3874 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 7 novembre 2014 - 2 juil. 2007 à 15:44
Bonjour,

J'aimerai savoir comment on peut lancer un programme externe lorsque l'on clique sur un bouton svp. Ca serait comme un system("prog.exe") en C.

Merci

8 réponses

Utilisateur anonyme
29 juin 2007 à 09:48
Salut,
Tu peux essayer :  ShellExecute(NULL,NULL,"chemin du prog a lancer",NULL,NULL,SW_SHOWNORMAL);
0
BruNews Messages postés 21041 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019 19
29 juin 2007 à 09:48
ShellExecute
ShellExecuteEx
CreateProcess
http://msdn2.microsoft.com/en-us/library/aa139672.aspx

ciao...
BruNews, MVP VC++
0
Yunchi Messages postés 100 Date d'inscription lundi 30 octobre 2006 Statut Membre Dernière intervention 14 avril 2009
29 juin 2007 à 11:23
Merci pour vos reponses.

Je l'ai mis dans la partie bouton clique mais il y'a des erreurs :

private

: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) {
ShellExecute(NULL,NULL,
"writer.exe",NULL,NULL,SW_SHOWNORMAL);
}
iI me faudrait svp les bibliotheques a inclure pour que ca marche je penses.

voici le haut de Form1.h

#pragma

once

namespace controller {

using
namespace System;

using
namespace System::ComponentModel;

using
namespace System::Collections;

using
namespace System::Windows::Forms;

using
namespace System::Data;

using
namespace System::Drawing;

 
0
Utilisateur anonyme
29 juin 2007 à 13:52
Essaie d'inclure windows.h, shellapi.h, et shell32.lib.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_darunia Messages postés 354 Date d'inscription mercredi 18 décembre 2002 Statut Membre Dernière intervention 24 mars 2011 2
29 juin 2007 à 14:33
Tu fais du C++ .NET !

Dans ce cas utilise la classe System.Diagnostics.Process du framework.

J'ai l'impression que beaucoup de debutants ne savent pas faire la différence entre et C++ et C++ .NET ???

Je ne suis pas sur melanger du .NET et du Win32 soit une bonne idée ... M'enfin c'est mon avis.

D@runia
0
BruNews Messages postés 21041 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019 19
29 juin 2007 à 18:14
C'est le problème (surement voulu) de l'amalgame créé en ayant repris le terme "C++" pour désigner de l'interprété.

ciao...
BruNews, MVP VC++
0
Yunchi Messages postés 100 Date d'inscription lundi 30 octobre 2006 Statut Membre Dernière intervention 14 avril 2009
2 juil. 2007 à 04:17
ah je ne sais pas ce que c'est que le C++ .NET .....

sinon il est deconseiller de melanger du .NET et du win32 a cause d'incompatibilites ? quel est la meilleure solution pour ce genre de chose alors ...

merci
0
cs_rt15 Messages postés 3874 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 7 novembre 2014 13
2 juil. 2007 à 15:44
Salut,

Le .NET, c'est comme le java : tu code dans un langage de haut niveau, tu fournit du code intermédiaire aux utilisateurs de ton appli et le pseudo code est finalement compilé en code machine par la runtime .NET. En C++ Win32, tu code dans un langage de haut niveau, et tu fourni du code machine à l'utilisateur.

Quelques avantages du DOTNET :
  Les librairies sont plus récentes et sensées être plus facile d'emploi.
  Plus de portabilité dans le futur (Le Win32 est sensé disparaître avant les classes du dotnet).
  Microsoft fait tout ce qu'il peut pour imposer le .NET (Et à aucune raison de ne pas finir par y arriver)
  Un débutant serat théoriquement plus productif en DOTNET.
  Le garbage collector qui récupère les objets non libérés.

Quelques avantages du Win32 :
  Permet de faire plus de chose, le DOTNET s'appuyant sur le Win32.
  Plus rapide et moins consommateur de mémoire.
  Pas besoin de l'installation du runtime.
  La "décompilation" est plus difficile: le langage machine est plus dur à lire que le pseudo code.
  Permet de mieux comprendre ce qu'il se passe au niveau du système d'exploitation.
  Permet de faire des optimisations plus fine qu'en dotnet où la façon dont c'est executé reste très floue.

Je crois pas que grand monde fasse du C++ .NET, ceux qui faisaient du
C++ et qui veulent faire du .NET sont passés surtout au C#, qui est
langage spécialement conçu pour le dotnet.

Tu croiseras de nombreux topic de forums ou des pro et anti dotnet ont mis du sang partout.
0