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

Visual C++ Discussion :

Fermer une fen�tre DOS dans une application MFC


Sujet :

Visual C++

  1. #1
    Membre confirm�
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    105
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 105
    Par d�faut Fermer une fen�tre DOS dans une application MFC
    Bonjour � tous;
    par ce petit message, je sollicite votre aide pour savoir comment intercepter la fermeture d'une console.
    Je m'explique:

    J'utilise une application MFC(VC++2005), avec une fen�tre, et en option, j'affiche des messages dans une fen�tre Dos � l'aide "AllocConsole". La console s'affiche bien et les messages aussi. Le probl�me est que, quand je ferme la console, l''application se ferme aussi. C'est ce que je ne voudrais pas.
    Y a-t-il un moyen d'intercepter le clic sur la croix de la console afin de pouvoir appeler "freeConsole" sans pour autant fermer l'application qui doit continuer � faire autre chose.
    Merci pour votre aide.

  2. #2
    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
    Tu ne peux.

    Sous XP, tu peux �tre pr�venu de la fermeture et faire le nettoyage avant de laisser le programme quitter, mais si tu refuses de quitter, tu auras une bo�te de dialogue "�a ne s'arr�te pas, voulez-vous tuez le programme" (Encore que, je n'ai jamais essay� de faire un ExitThread() dans le handler).
    La fonction pour cela est SetConsoleCtrlHandler().

    Sous 9x, �a ne marche pas : SetConsoleCtrlHandler() existe, mais quoi que tu fasses, l'�v�n�ment de fermeture n'est pas re�u (bug?).
    Sous 2000, NULL id�e: J'ignore si �a marche ou non.
    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.

  3. #3
    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
    Ma solution: En r�ponse � ce probl�me, j'ai d�velopp� ma propre fen�tre qui ressemble � une console, mais en moins bien.
    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.

  4. #4
    Membre confirm�
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    105
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 105
    Par d�faut
    Pourrais-je connaitre la solution que vous avez d�velopp� pour la classe Console ?
    Merci.

  5. #5
    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
    Je ne l'ai pas sous la main ici.
    En plus, elle a �t� aussi inutilement compliqu�e, puisque je me livrais � des pratiques douteuses sur les codes source � l'�poque o� je m'en servais...
    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.

Discussions similaires

  1. R�ponses: 2
    Dernier message: 17/01/2008, 11h47
  2. R�ponses: 1
    Dernier message: 21/12/2007, 21h27
  3. R�ponses: 11
    Dernier message: 06/12/2005, 08h23

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