-
problème de pointeur
bonjour,
j'ai un problème avec les pointeurs, dans ma classe principale j'ai insérer un controle ActiveX et je lui est associé une variable m_DTC
il me génère donc une classe .cpp et un fichier.h
lorsque j'essaie d'appeler les fonction de ce controle dans un CDialog
comme ça
dans le fichier .h de la classe du CDialog je met un pointeur
Cmyinterface *pdc;
et dans ma classe principale j'appelle la CDialog dans l'événement d'un boutton comme suit:
CexempleCDialog exple;
exple.pdc=&m_DTC;
int nreponse =exple.DoModal();
if (nreponse)
{
return;
}
j'obtient à l'exécution un bug
Exception non gérée à 0x7c2090db (mfc70d.dll) dans projet.exe:0xC0000005: Violation d'accès lors de la lecture de l'emplacement 0xcccccd1c.
je veux créer plusieurs CDialog à chaque fois je dois faire
un pointeur et le problème persiste.:roll:
j'espère que j'ai bien exposé le problème
merci
-
est ce le problème est des proprièté du controle Activex
-
Avec une adresse comme ça dans l'erreur, ça veut typiquement dire que tu tentes d'accéder à une variable membre (ou peut-être même une fonction virtuelle) d'un objet via un pointeur non-initialisé, et le pointeur en question est sûrement dans une variable locale.
http://en.wikipedia.org/wiki/Magic_n...c_debug_values
La mauvaise adresse correspond à 0xCCCCCCCC + 0x50, (0xCCCCCCCC + 80)
-
comment je peux l'initialiser
-
Je ne sais pas, moi, on ne sait même pas quel pointeur c'est...
Tu devrais utiliser le debugger pour voir quel accès crée le problème...