Есть MFC-приложение и MFC extension DLL. Приложение загружает эту DLL посредством AfxLoadLibrary. При вызове AfxFreeLibrary в окно отладки выдаются сообщения об утечке памяти для всех операций выделения памяти, сделаных между вызовами AfxLoadLibrary и AfxFreeLibrary. Например при выполнении такого куска кода:
HMODULE hModule = AfxLoadLibrary( _T("MyDLL.dll") );
int* p1 = new int[ 100 ];
char* p2 = new char[ 321 ];
AfxFreeLibrary( hModule );
delete p1;
delete p2;
в окно отладки выдаются такие сообщения:
MyDLL.DLL Initializing!
MyDLL.DLL Terminating!
Detected memory leaks!
Dumping objects ->
...\appdlg.cpp(50) : {108} normal block at 0x0035C8A8, 321 bytes long.
Data: < > CD CD CD CD CD CD CD CD CD CD CD CD CD CD CD CD
...\appdlg.cpp(49) : {107} normal block at 0x0035C6D8, 400 bytes long.
Data: < > CD CD CD CD CD CD CD CD CD CD CD CD CD CD CD CD
f:\rtm\vctools\vc7libs\ship\atlmfc\src\mfc\strcore.cpp(141) : {82} normal block at 0x00353298, 49 bytes long.
Data: < >x > EC 97 3E 78 0C 00 00 00 20 00 00 00 01 00 00 00
{69} client block at 0x00353218, subtype c0, 64 bytes long.
a CDynLinkLibrary object at $00353218, 64 bytes long
a CDynLinkLibrary object at $00353218, 64 bytes long
Object dump complete.
Кто-нибудь знает, как с этим бороться ? Может тема уже обсуждалась, тогда дайте плиз ссылочку.