2010-01-19 5 views
1

J'ai un ancien utilitaire MFC écrit avec le projet VS2008. Nous avons utilisé cet utilitaire depuis quelques années maintenant et je n'ai jamais rencontré ce problème, mais il apparaît de plus en plus souvent sur les ordinateurs des clients.Les boutons de dialogue MFC s'affichent sous la forme de boîtes noires

Les sous-boîtes de dialogue lancées à partir de ma boîte de dialogue principale auront leurs boutons noircis. J'ai inclus une capture d'écran de l'un des ordinateurs de mes clients.

alt text http://chipkin.com/files/dialogboxerror.png

Le client utilise Microsoft Windows XP Professionnel Version 2002 Service Pack 3. Je l'ai testé ce problème avec cette version de Windows dans notre laboratoire avec des pouvoir le reproduire. Ce problème est arrivé sur beaucoup d'ordinateurs différents peuples.

Savez-vous quelle est la cause? et comment le résoudre?

+0

J'ai vu ce problème, et j'essaie pour la vie de me souvenir de ce que c'était ... –

+0

Y a-t-il quelque chose d''intéressant' à propos de ces boutons? Ont-ils des bitmaps? Dessiné par le propriétaire? Utiliser une classe dérivée de CButton personnalisée? Votre boîte de dialogue gère-t-elle WM_CTLCOLOR pour changer la couleur des boutons? –

+0

@John Dibling, Non, il n'y a rien de spécial à propos de ces boutons. J'ai changé les noms par défaut et c'est à peu près tout. –

Répondre

1

Je l'ai vu lorsque la machine était à court de mémoire. Il ne restait plus assez de RAM pour charger les images des boutons.

+1

Pas de mémoire - juste à cause des poignées GDI. Habituellement arrive s'il y a une fuite de GDI quelque part. Les chances que cela se produise sont beaucoup plus élevées que d'être hors de la mémoire. – Stefan

Questions connexes