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 :

[MFC] [VC++6] Lancer plusieurs applications depuis une autre


Sujet :

MFC

  1. #1
    Membre �clair�
    Profil pro
    Inscrit en
    Ao�t 2002
    Messages
    225
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Ao�t 2002
    Messages : 225
    Par d�faut [MFC] [VC++6] Lancer plusieurs applications depuis une autre
    Bonjour � toutes et � tous,

    Avant de poster mon message je suis pass� par la faq, j'ai bien trouv� un exemple de code bas� sur l'utilisation de ShellExecute mais la compilation tel quel de cet exemple me donne une Access Violation ... alors me voila maintenant sur le forum pour demander de l'aide.

    Je voudrai d�velopper une application simple charg� de lancer plusieurs applications avec une temporisation entre chaque lancement, puis une fois toutes les applications lanc�es, je voudrais qu'elle se termine sans pour autant termin� les autres ... dans le pire des cas j'accepterai que l'application "lanceuse" reste active mais cach�e.

    J'ai essay� d'utilis� la fonction "system" mais cette derni�re ne permet de lancer qu'une application.

    Comment faire ?

    D'avance merci pour votre aide.

  2. #2
    R�dacteur
    Avatar de nico-pyright(c)
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    6 414
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 6 414
    Par d�faut
    shellexecute est faite pour ca (ou createprocess), montre ton code

  3. #3
    Membre �clair�
    Profil pro
    Inscrit en
    Ao�t 2002
    Messages
    225
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Ao�t 2002
    Messages : 225
    Par d�faut
    Bonjour,

    Pour le code c'est exactement celui de la faq.

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    HINSTANCE nerror;
    CString strApp="WINWORD";
    nerror=ShellExecute(AfxGetMainWnd()->m_hWnd, NULL, strApp, NULL, NULL, SW_SHOWNORMAL);
    if(reinterpret_cast<int>(nerror) <= 32)
    {
        CString mess;
        mess.Format("Erreur de lancement de l’application:\n%s Erreur n°:%d",(const char *)strApp,nerror);
        AfxMessageBox(mess,MB_ICONEXCLAMATION);
    }

  4. #4
    Membre �clair�
    Profil pro
    Inscrit en
    Ao�t 2002
    Messages
    225
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Ao�t 2002
    Messages : 225
    Par d�faut
    Bon, j'ai essay� avec le code suivant, toujours dans la faq
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    SHELLEXECUTEINFO ExecuteInfo;    
    memset(&ExecuteInfo, 0, sizeof(ExecuteInfo));
     
    ExecuteInfo.cbSize       = sizeof(ExecuteInfo);
    ExecuteInfo.fMask        = 0;                
    ExecuteInfo.hwnd         = 0;                
    ExecuteInfo.lpVerb       = "open";                      
    ExecuteInfo.lpFile       = "c:\\windows\\notepad.exe";
    ExecuteInfo.lpParameters = "c:\\mydir\\toto.txt";
    ExecuteInfo.lpDirectory  = 0;
    ExecuteInfo.nShow        = SW_SHOW;
    ExecuteInfo.hInstApp     = 0;    
    if(ShellExecuteEx(&ExecuteInfo) == FALSE)
    {
    // erreur
    }
    et l� je n'ai plus d'erreur ... de plus comme tu me l'as dit nico-pyright(c), le fonctionnement correspond toujours � mon besoin.

    Ceci dit je ne sais pas pourquoi le premier exemple de code de la faq me donne une erreur de type Access Violation.

  5. #5
    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
    Par d�faut
    �a ne nous dis pas sur quelle ligne il y a eu un acces violation.
    je serais etonn� que ce soit sur ces lignes sauf si :
    AfxGetMainWnd() renvoie null. ce qui voudrait dire que ton application n'est pas en graphique MFC.

  6. #6
    Expert �minent
    Avatar de M�dinoc
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 397
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 41
    Localisation : France

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

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 397
    Par d�faut
    Dans ce cas, on peut remplacer ->m_hWnd (que je pensais priv�) par ->GetSafeHwnd(), qui ne causera pas de plantage si la fen�tre est NULL...
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parl� avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. Ouvrir une application depuis une autre application
    Par Matf4ke dans le forum Android
    R�ponses: 1
    Dernier message: 30/11/2012, 10h38
  2. appel d'application depuis une autre application
    Par Cedric G dans le forum D�veloppement iOS
    R�ponses: 1
    Dernier message: 05/06/2012, 14h52
  3. Afficher un textes dans une application depuis une autre
    Par amine008 dans le forum Windows Communication Foundation
    R�ponses: 2
    Dernier message: 11/07/2011, 17h17
  4. Appeler une application depuis une autre application
    Par Agriesean dans le forum Android
    R�ponses: 2
    Dernier message: 30/06/2011, 14h57
  5. Installer application depuis une autre
    Par Viish dans le forum Android
    R�ponses: 1
    Dernier message: 14/08/2010, 17h17

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