C++ Executer un programe depui mon programme

Bonjour,
Je voudrai pouvoir exécuter des programme depui mon programme.
J'y arrive avec system(); mais c'est nul, sa l'ouvre a partir du dos. J'ai essailler :
ShellExecute(0, 0, "notepad.exe", 0, 0, SW_SHOW);
ShellExecute(GetDesktopWindow(), "open", "c:\Windows\notepad.exe", NULL, NULL, SW_SHOWNORMAL);
WinExec("notepad.exe",SW_SHOW);
Process.Start("notepad")
rien ne marche...
Erreur a la compilation, pk ?
Configuration: Windows Vista
Firefox 3.0.4

3 réponses

  1. Je viens de tester, ta commande :
    ShellExecute(0, 0, "notepad.exe", 0, 0, SW_SHOW); 
    

    à l'air de marcher comme tu veux...

    Si tu as un problème à la compilation, as-tu inclus shellapi.h ?
    #include <shellapi.h>
    
    1. Nan je l'avais pas fait :).
      mais sa marche pas pour autan...

      #include <iostream>
      #include <shellapi.h>
      
      
      using namespace std;
      
      int main()
      {
      
      ShellExecute(0, 0, "notepad.exe", 0, 0, SW_SHOW); 
      
          return 0;
      }
      


      Dans Code::Blocks sa m'ouvre shellapi.h et sa me dit qu'il y a une erreur ligne 142 :
      typedef WORD FILEOP_FLAGS;
      1. Désolé, j'ai pas vérifié, il te manque aussi avant le shellapi
        #include <windows.h>
        

        là, je compile bien.
    2. Nan sa compile toujours pas, je fais surement une erreur bête quelque par...
      Tu pourrais m'envoyer ton code complet stp.
      1. C'est pas mon code, c'est le tien ;-)
        #include <iostream>
        #include <windows.h>
        #include <shellapi.h>
        
        
        using namespace std;
        
        int main()
        {
        
        ShellExecute(0, 0, "notepad.exe", 0, 0, SW_SHOW);
        
            return 0;
        }
        
      2. @Droopy_Note: Il faut mettre windows.h avant shellapi.h, c'est peut-être ça ton problème...
      3. @Droopy_Oui c'est sa :)
        Il faut mettre windows.h avant shellapi.h.
        Merci beaucoup pour ton aide.