Skip to main content

Posts

Showing posts with the label MFC

Microsoft Visual C++ Runtime Library - Debug Assertion Failed!

Microsoft Visual C++ Runtime Library - Debug Assertion Failed! Running an application in a debug environment throws the following assertion message. --------------------------- Microsoft Visual C++ Runtime Library --------------------------- Debug Assertion Failed! Program: x:\test\myapp.exe File: minkernel\crts\ucrt\src\appcrt\heap\debug_heap.cpp Line: 996 Expression: __acrt_first_block == header For information on how your program can cause an assertion failure, see the Visual C++ documentation on asserts. (Press Retry to debug the application) --------------------------- Abort   Retry   Ignore    --------------------------- In my specific case, this was caused by a string created in the heap by a DLL and freed in the executable.  The DLL was built using /MDd [ Configuration Properties | C/C++ | Code Generation | Runtime Library = Multi-threaded Debug DLL (/MDd) ] and the executable was built /MTd with MFC as static library [ Configuration Properties | C/C++ | Code Generation | Runti