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 :

lancer un projet à partir d'un autre


Sujet :

MFC

  1. #1
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2011
    Messages
    47
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Avril 2011
    Messages : 47
    Points : 50
    Points
    50
    Par défaut lancer un projet à partir d'un autre
    Bonjour,

    Je ne sais pas si le titre est bien choisi ou non, mais en gros voilà mon problème:

    J'ai 2 projets de type application boite de dialogue, qui sont dans une même solution.
    Au démarrage je veux lancer que le premier projet et à partir de celui-ci (en cliquant sur un bouton) je lance le 2ème projet (afficher la 2eme boite de dialogue) en mode DoModal()
    Et je veux récupérer des données à partir de cette dernière boite de dialogue avant sa fermeture, pour les utiliser après dans la boite dialogue du 1er projet.


    la question est comment je peux appeler une classe du 2eme projet à partir du premier*?


    Ps*: je ne cherches pas à lancer les 2 projets au même temps au démarrage

    Merci

  2. #2
    Expert éminent sénior
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2005
    Messages
    5 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : Février 2005
    Messages : 5 073
    Points : 12 119
    Points
    12 119
    Par défaut
    Un projet, c'est un truc qui permet de générer un binaire, un exécutable, une dll, un driver, un service, ...
    On ne peut donc pas "lancer" un projet. On peut générer le binaire correspondant à la sortie du projet.

    Dans votre cas, ce n'est pas un détail.
    Quel est le type des projets "lanceur" et le type de projet "lancé" ?

    Si c'est une question purement rhétorique, le plus simple, c'est de ne pas faire 2 projets mais un seul.

    Si vous voulez pouvoir réutiliser le projet "lancé" dans d'autres solutions, le plus simple est de faire du projet "lancé" une librairie statique.
    Une référence du projet "lanceur" sur le projet "lancé", quelques includes dans des fichiers du projet "lanceur" sur des fichiers d'en-tête du projet "lancé" et le tour est joué.

  3. #3
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2011
    Messages
    47
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Avril 2011
    Messages : 47
    Points : 50
    Points
    50
    Par défaut
    Citation Envoyé par bacelar Voir le message
    Quel est le type des projets "lanceur" et le type de projet "lancé" ?
    Mes 2 projets sont de type Application Boite de dialogue.

    Citation Envoyé par bacelar Voir le message
    Si vous voulez pouvoir réutiliser le projet "lancé" dans d'autres solutions...
    Oui c'est ça, je veux réutiliser mon premier projet.

    Donc la solution est bien de créer une librairie statique et pour ce là je dois créer un nouveau projet de type Win32 mais je ne sais pas est ce je dois créer un projet vide et je rajoute des éléments existants depuis mon ancien projet (déjà compilé en tant que projet ApplicationMFC) ou y a une autre façon de le faire ?

    Si c'est le premier cas: quels fichiers je dois les rajouter au nouveau projet (tous les .h ET .cpp ainsi resource.h ET ...) et est ce que je dois faire qlq modif ?

    Merci de me guider un petit peu

  4. #4
    Expert éminent sénior
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2005
    Messages
    5 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : Février 2005
    Messages : 5 073
    Points : 12 119
    Points
    12 119
    Par défaut
    Bon, bin, vu que c'est des MFC (oui, il y a pas mal de post ici qui ne sont pas MFC, malheureusement), la solution "simple" n'est pas viable.

    MFC utilise une tripoté de truc bien crade qui interdit l'utilisation de la solution simple.

    Donc pas de Win32, vos boites de dialogue MFC utilise le runtime MFC.

    La solution standard pour ce cas est l'utilisation d'une Dll d'extension MFC


    Voir l'article qui suit (avec son message sur les bugs qui reste dans le source)

    http://www.codeproject.com/Articles/...-for-Beginners

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    147
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 147
    Points : 116
    Points
    116
    Par défaut
    Est-ce que le plus simple ne serait pas de récupérer la boite de dialogue du 2nd projet et de l'intégrer dans le 1er projet ?
    Cela permettrait d'appeler la 2nde fenêtre via un DoModal sans aucun problème.

  6. #6
    Expert éminent sénior
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2005
    Messages
    5 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : Février 2005
    Messages : 5 073
    Points : 12 119
    Points
    12 119
    Par défaut
    coincoin73, c'est qui qui synchronisera les resources.h des 2 projets pour que le code de la boite de dialogue greffée à la Frankenstein fonctionne ? (Et ça, c'est que le début des emmerdes).

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    147
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 147
    Points : 116
    Points
    116
    Par défaut
    Copier-Coller une boite de dialogue d'un projet vers un autre, cela fonctionne très bien.
    Le resource.h ne pose pas de problème, il suffit s'il y a des doublons de refaire la numérotation.

Discussions similaires

  1. Réponses: 10
    Dernier message: 25/05/2010, 11h25
  2. Lancer un .EXE à partir d'un autre programme
    Par Pascal.Alain.B dans le forum Assembleur
    Réponses: 6
    Dernier message: 26/03/2007, 23h53
  3. Lancer un exe à partir d'un autre exe.
    Par kanea_iza dans le forum Windows
    Réponses: 2
    Dernier message: 15/03/2007, 08h34
  4. lancer formulaire a partir d'un autre
    Par TheRealMike dans le forum IHM
    Réponses: 2
    Dernier message: 14/03/2007, 12h47
  5. Appel d'un projet à partir d'un autre
    Par kazhar dans le forum VB.NET
    Réponses: 2
    Dernier message: 26/02/2007, 10h16

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