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 :

probleme d'exécution Visual c++ 6


Sujet :

MFC

  1. #1
    Membre éclairé
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mai 2006
    Messages
    350
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2006
    Messages : 350
    Par défaut probleme d'exécution Visual c++ 6
    La compillation fonctionne, mais ca me fais :





    le code de la ou ca arrive, je l'ai cherché avec le débeugeur et des points d'arrets.
    Code de la DLL Regular :
    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
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    extern "C" void WINAPI AfxShowDlg(CWnd* pParent)
    {
    	AFX_MANAGE_STATE(AfxGetStaticModuleState());
    
    	DLLdlg = new CDllDialog();
    	int x=1;
    	BOOL ret = DLLdlg->Create(IDD_SETUP,pParent);
    	int y = 0;
    	if(true)
    	{
    		if(DLLdlg==NULL)
    		{
    			if(!ret)
    			{
    				//MessageBox(pParent,"Défaut ouverture Graphique.","ONERA",MB_OK);
    				DLLdlg=NULL;
    				return;
    			}
    			DLLdlg->ShowWindow(SW_SHOW);
    		}
    	}
    	if(DLLdlg!=NULL)
    	{
    		//LectureLignes();
    		DLLdlg->SendMessage(WM_USERDRAW,0,0);	// dessine le profil x
    	}
    }
    
    
    
    extern "C" void WINAPI AfxInitDlg()
    {
    	AFX_MANAGE_STATE(AfxGetStaticModuleState());
    
    	DLLdlg = NULL;
    }
    Ca utilise un pointeur privé a la DLL.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    static CDllDialog *DLLdlg;
    Code du programme principal :
    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
     
    BOOL CAutoCollimationV1Dlg::OnInitDialog()
    {
    	CDialog::OnInitDialog();
    	.
    	.
    	.
    	AfxInitDlg();
     
    	UpdateData(FALSE);
    	return TRUE;  // retourner TRUE, sauf si vous avez défini le focus sur un contrôle
    }
    void CAutoCollimationV1Dlg::OnBSetupTraitement()
    {
    	AfxShowDlg(this);
    }
    Est ce que vous voyez ce qui ne va pas !!!

  2. #2
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 395
    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 395
    Par défaut
    On ne sait pas quelle est l'assertion qui foire.
    Qu'est-ce qu'il y a à la ligne 879 de wincore.cpp ?

    (c'est un fichier source de MFC, il doit être quelque part dans le dossier de Visual. Et oui, j'ai la flemme de chercher, mais je n'ai pas ta version de MFC).
    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
    Membre éclairé
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mai 2006
    Messages
    350
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2006
    Messages : 350
    Par défaut
    ok je vais voir

  4. #4
    Membre éclairé
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mai 2006
    Messages
    350
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2006
    Messages : 350
    Par défaut
    je ne sais pas si ca va t'aider !!!

    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
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    void CWnd::AssertValid() const
    {
    	if (m_hWnd == NULL)
    		return;     // null (unattached) windows are valid
    
    	// check for special wnd??? values
    	ASSERT(HWND_TOP == NULL);       // same as desktop
    	if (m_hWnd == HWND_BOTTOM)
    		ASSERT(this == &CWnd::wndBottom);
    	else if (m_hWnd == HWND_TOPMOST)
    		ASSERT(this == &CWnd::wndTopMost);
    	else if (m_hWnd == HWND_NOTOPMOST)
    		ASSERT(this == &CWnd::wndNoTopMost);
    	else
    	{
    		// should be a normal window
    		ASSERT(::IsWindow(m_hWnd));
    
    		// should also be in the permanent or temporary handle map
    		CHandleMap* pMap = afxMapHWND();
    		ASSERT(pMap != NULL);
    
    		CObject* p;
    		ASSERT((p = pMap->LookupPermanent(m_hWnd)) != NULL ||
    			(p = pMap->LookupTemporary(m_hWnd)) != NULL);
    		ASSERT((CWnd*)p == this);   // must be us
    
    		// Note: if either of the above asserts fire and you are
    		// writing a multithreaded application, it is likely that
    		// you have passed a C++ object from one thread to another
    		// and have used that object in a way that was not intended.
    		// (only simple inline wrapper functions should be used)
    		//
    		// In general, CWnd objects should be passed by HWND from
    		// one thread to another.  The receiving thread can wrap
    		// the HWND with a CWnd object by using CWnd::FromHandle.
    		//
    		// It is dangerous to pass C++ objects from one thread to
    		// another, unless the objects are designed to be used in
    		// such a manner.
    	}
    }

  5. #5
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 395
    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 395
    Par défaut
    Apparamment, MFC n'est pas correctement initialisé au moment où tu appelles ta fonction.
    Tu as du oublier une étape de l'initialisation de ta DLL.
    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.

  6. #6
    Membre éclairé
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mai 2006
    Messages
    350
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2006
    Messages : 350
    Par défaut
    Comment on cré une resource vide, car peux etre qu'il ne connait pas IDD_SETUP ? J'avait essayé avec une autre resource, mais si il ne les sauvegarde pas, se sera pareil !!!

  7. #7
    Membre éclairé
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mai 2006
    Messages
    350
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2006
    Messages : 350
    Par défaut
    Comment elle est sencé s'etre initialisé ma resource ??? car je ne vois pas ou c'est fait ? Ca n'a rien a voir avec le constructeur de la class ?

  8. #8
    Membre éclairé
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mai 2006
    Messages
    350
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2006
    Messages : 350
    Par défaut
    je ne sais pas si ca peut vous aider !!! Voila ce que j'obtient si je fais ignorer dans la fenêtre montré précedemment.


  9. #9
    Membre éclairé
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mai 2006
    Messages
    350
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2006
    Messages : 350
    Par défaut
    Est ce que quelqu'un comprend d'ou vient cette erreur ?

Discussions similaires

  1. Probleme portabilité appli C++/SDL Visual Studio 2005
    Par ben13 dans le forum VC++ .NET
    Réponses: 1
    Dernier message: 18/01/2007, 19h17
  2. Probleme pour inclure list sous visual 2005
    Par Pierre_Moulon dans le forum Visual C++
    Réponses: 2
    Dernier message: 16/12/2006, 22h36
  3. Probleme de pointers et de visual .net
    Par feltin dans le forum Visual C++
    Réponses: 4
    Dernier message: 11/12/2006, 13h28
  4. probleme link c++ sous microsoft visual
    Par seb833434 dans le forum MFC
    Réponses: 5
    Dernier message: 10/04/2006, 15h50
  5. boost - Probleme avec compilateur C++ de visual studio 2005
    Par gilles641 dans le forum Autres éditeurs
    Réponses: 2
    Dernier message: 24/01/2006, 19h03

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