Hi everybody:
I've made a DLL for image processing, with several classes and some methods to export. The Dll works properly in a normal Win32 Console Application project.
Now I'm doing a very easy graphical Interface (a Windows Form Application), but when I declare my variable to the dll I get this Error:
> msvcr90d.dll!_msize_dbg(void * pUserData=0x65a2449d, int nBlockUse=2) Line 1511 + 0x30 bytes C++
msvcr90d.dll!_dllonexit_nolock(int (void)* func=0x65e2e89d, void (void)* * * pbegin=0x0012efec, void (void)* * * pend=0x0012efe4) Line 295 + 0xd bytes C
msvcr90d.dll!__dllonexit(int (void)* func=0x65e2e89d, void (void)* * * pbegin=0x0012efec, void (void)* * * pend=0x0012efe4) Line 273 + 0x11 bytes C
VisualIF.exe!_onexit(int (void)* func=0x0040ac00) Line 110 + 0x1b bytes C
VisualIF.exe!atexit(void (void)* func=0x0040ac00) Line 127 + 0x9 bytes C
VisualIF.exe!`dynamic initializer for'g_Allocator''() Line 23 + 0x19 bytes C++
I've read here several posts about similar problems, but I've not found any properly answer.
Worst is that I don't know how could debug this error.
Have you some ideas??
You have a memory overrun error that's been detected by the debug heap at application shutdown.
As the error has been detected by the debug heap, you could run period heap checks to identify the heap corruption while the app's still running. This may help you identify when the corruption occurs.
I take it g_Allocator's one of yours. That'd be a good place to start.