Estoy desarrollando una clase de editor de texto (para una aplicación de chat) basada en CRichEditCtrl
(MFC) con soporte para emoticones.Fuga de memoria durante el uso de emoticones en CRichEditCtrl
Después de cargar el mapa de bits del emoticón, utilizo la función OleCreateStaticFromData
para insertarlo en CRichEditCtrl
. Después de eso, simplemente elimino el objeto de mapa de bits asignado por mí mismo. Puedo verificar (utilizando una utilidad GDIView
) que todos los recursos que asigné se han liberado correctamente.
Esto funciona perfectamente: el mapa de bits (emoticon) se dibuja en la ventana CRichEditCtrl
y se maneja como un personaje.
Mi problema es que no sé cómo desasignar la memoria (interna) asignada por OleCreateStaticFromData
para administrar el mapa de bits (emoticon). La memoria asignada para cualquier emoticon utilizado nunca se libera, incluso si elimino el objeto CRichEditCtrl
. Me gustaría saber cómo solucionar ese problema. ¿Es ese un problema de MFC o estoy haciendo algo mal?