Help urgent pour mon projet!!!

CeNedra83 Messages postés 96 Date d'inscription lundi 20 novembre 2000 Statut Membre Dernière intervention 11 juillet 2006 - 18 déc. 2005 à 19:52
ymca2003 Messages postés 2070 Date d'inscription mardi 22 avril 2003 Statut Membre Dernière intervention 3 juillet 2006 - 19 déc. 2005 à 15:37
je programme en MFC C++ et j'ai une boite de dialogue sur laquelle je tape du texte dans une fenetre et ensuite je dois l'enregistrer.
seulement g qq pb...je met le code source de ce fichier (le projet n'est pas complet mais si ça vous donne une idée....)avec l'errreur que j'ai!
ou est ce que je me trompe??

d:\Mes documents\INSA\5 EII\Projet C\interface_config\interface_config\interface_config.cpp(70): error C3861: 'GetSafeHwnd': identifier not found, even with argument-dependent lookup


// interface_config.cpp : Définit les comportements de classe pour l'application.


//


#include "stdafx.h"


#include "interface_config.h"


#include "interface_configDlg.h"


#include "afxwin.h"


#ifdef _DEBUG


#define
new DEBUG_NEW


#endif


HWND win;
//handle de l'edit box


HWND main_win;
//handle de la boite de dialogue


// Cinterface_configApp


BEGIN_MESSAGE_MAP(Cinterface_configApp, CWinApp)


ON_COMMAND(ID_HELP, CWinApp::OnHelp)


END_MESSAGE_MAP()


// construction Cinterface_configApp


Cinterface_configApp::Cinterface_configApp()


{



// TODO : ajoutez ici du code de construction,



// Placez toutes les initialisations significatives dans InitInstance


}


// Seul et unique objet Cinterface_configApp


Cinterface_configApp theApp;


// initialisation Cinterface_configApp


BOOL Cinterface_configApp::InitInstance()


{



char buffer[30];



// InitCommonControls() est requis sur Windows XP si le manifeste de l'application



// spécifie l'utilisation de ComCtl32.dll version 6 ou ultérieure pour activer les



// styles visuels. Dans le cas contraire, la création de fenêtres échouera.


InitCommonControls();


CWinApp::InitInstance();


AfxEnableControlContainer();



// Initialisation standard



// Si vous n'utilisez pas ces fonctionnalités et que vous souhaitez réduire la taille



// de votre exécutable final, vous devez supprimer ci-dessous



// les routines d'initialisation spécifiques dont vous n'avez pas besoin.



// Changez la clé de Registre sous laquelle nos paramètres sont enregistrés.



// TODO : Modifiez cette chaîne avec des informations appropriées,



// telles que le nom de votre société ou organisation


SetRegistryKey(_T("Applications locales générées par AppWizard"));


Cinterface_configDlg dlg;


m_pMainWnd = &dlg;


INT_PTR nResponse = dlg.DoModal();



if (nResponse == IDOK)


{



// TODO : Placez ici le code définissant le comportement lorsque la boîte de dialogue est



// fermée avec OK



//WritePrivateProfileString("Visionneuse","Repertoire","ça marche !","D:\config.ini");


main_win = GetSafeHwnd();


win = GetDlgItem(main_win, IDC_NAME);


GetWindowText(win,buffer,30);


WritePrivateProfileString("Enfant","prenom",buffer,"D:\\Mes Documents\\config.ini");


}



else
if (nResponse == IDCANCEL)


{
// TODO : Placez ici le code définissant le comportement lorsque la boîte de dialogue est



// fermée avec Annuler


}



// Lorsque la boîte de dialogue est fermée, retourner FALSE afin de quitter



// l'application, plutôt que de démarrer la pompe de messages de l'application.



return FALSE;


}

3 réponses

cs_dan34 Messages postés 28 Date d'inscription dimanche 27 mars 2005 Statut Membre Dernière intervention 13 mars 2012
18 déc. 2005 à 20:09
T'as essayé de mettre #include juste après le #include "stdafx.h" ou mieux dans le fichier stdafx.h ?
0
CeNedra83 Messages postés 96 Date d'inscription lundi 20 novembre 2000 Statut Membre Dernière intervention 11 juillet 2006
18 déc. 2005 à 20:29
ça n'y change rien, les include sont bien faits....
0
ymca2003 Messages postés 2070 Date d'inscription mardi 22 avril 2003 Statut Membre Dernière intervention 3 juillet 2006 7
19 déc. 2005 à 15:37
GetSafeHwnd n'est pas dans la class CWinApp mais dans les classes CWnd et dérivées :
=> passer par dlg.
main_win = dlg.GetSafeHwnd();

Cependant le faire là où tu l'as ne sert à rien vu que la boîte de dialogue sera déjà fermée (toute l'appli se passe pendant l'apple à DoModal, avant la boîte est pas encore créée, après elle est déjà fermée et détruite)
0
Rejoignez-nous