dambeaufort
Messages postés60Date d'inscriptionmardi 10 février 2004StatutMembreDernière intervention17 septembre 2004
-
16 avril 2004 à 14:20
dambeaufort
Messages postés60Date d'inscriptionmardi 10 février 2004StatutMembreDernière intervention17 septembre 2004
-
17 avril 2004 à 10:13
bonjour,
voici mon probleme:
J'ai une application mfc constitue de plusieur boite de dialogue s'ouvrant a la suite des autres. J'ai un thread qui lit en memoire partagee si un autre process a recu une erreur.
Le probleme c que quand mon thread detecte l'erreur, je souhaiterais lui faire afficher une messagebox, quel que soit la boite modale ou je me trouve.
Pour l'instant ce messagebox s'affiche mais sous ma fenetre en cours. Comment faire pour qu'elle s'affiche en premier plan et qu'elle y reste,, meme si l'utilsateur clique en dehors de son cadre.
Voila mon thread pour le moment:
UINT Threaddetecerreur( LPVOID param )
{ MESSAGE_ERREUR Erreur;
Sleep(100);
for (;;)
{Sleep (100);
Erreur=receptionmemparterreur();
if (Erreur.CodeErreur_materiel==1) {MessageBox(NULL,"erreur sur l'ouverture du port COM1","Erreur",MB_ICONEXCLAMATION | MB_OK);
RtSetEvent(validfinfin); //fermeture process RTX
ExitProcess(0); //fermeture process windows
}
}
}
je sais que le premier parametre correspond a l'handle de la fenetre mere mais je ne sais pas comment la recupere puisque j'ai plusieurs boite modale cree avec domodal.
dambeaufort
Messages postés60Date d'inscriptionmardi 10 février 2004StatutMembreDernière intervention17 septembre 2004 16 avril 2004 à 20:26
je vous remercie pour tte ces reponse, je suis malheureusement en w end mais je testerais ca le plus vite possible.
Le probleme avec ma messagebox, c'est en effet qu'elle s'ouvre, fonctionne parfaitement mais apparait derriere ma fenetre en cours.
Je pense que cela viens du fait que mon thread n'appartient a aucune classe, mais je n'en suis pas sur.
Donc proposer moi tout ce que vous pouvez et je verrais des que je pourrais.
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019 16 avril 2004 à 20:27
grems>
MB_SYSTEMMODAL
Same as MB_APPLMODAL except that the message box has the WS_EX_TOPMOST style. Use system-modal message boxes to notify the user of serious, potentially damaging errors that require immediate attention (for example, running out of memory). This flag has no effect on the user's ability to interact with windows other than those associated with hWnd.
Lis bien la derniere phrase.
Cette constante est issue du monde 16 bits, SYSTEMMODAL n'a plus de sens depuis win 95.
cs_grems
Messages postés50Date d'inscriptionmercredi 7 avril 2004StatutMembreDernière intervention20 avril 2004 16 avril 2004 à 20:42
OK merci brunews
c t pa si compliqué tu vois d'expliquer :)
OK, moi j'avai pa tout ca d'écri dans l'aide de VC++ mai en ligne c ckè écrit. donc autant pour moi . l'équivalent de ce paramètre est donc .....??
Vous n’avez pas trouvé la réponse que vous recherchez ?
DeAtHCrAsH
Messages postés2670Date d'inscriptionvendredi 25 janvier 2002StatutMembreDernière intervention 6 février 2013 16 avril 2004 à 21:04
LOOOOL
Ca va mal se finir ici :p
Serieux arreter de coder avec les MFC ca pose probleme a tout le monde.
Le C/C++ est a la base un language portable, alors ARRETER de vous servir de la MFC et et toute les merdes dans le genre VCL, ....
Si vous cherchez la simplicité allez donc voir du cote de VB ...
Ca sert a rien de coder si c'est pour vous prendre la tete a comprendre ce que quasiment personne ne comprend ici !!!!
Mouai j'sais pas si c'est du bon francais ca, mais le message a du passer je pense ....
dambeaufort
Messages postés60Date d'inscriptionmardi 10 février 2004StatutMembreDernière intervention17 septembre 2004 17 avril 2004 à 10:13
je ne comprend pas puisque je viens de tester ce que vous me dites chez moi sur mon PC et ca fonctionne. Par contre au boulot j'ai fait exacetement pareil et ca n'aller pas.
Je reteste lundi et je vous tiens au courant.