Several applications I work on have begun to crash with the dreaded ".exe has stopped working" error under varying circumstances.
Here is the situation. These apps are over 20 years old and have been added onto many times, starting out as DOS ANSI C programs, and going through a number of upgrades over the years. There is no point in posting code as they are many thousands of lines long. The current compiler is VS2010 C++.
Unlike normal runtime errors, these crashes seem very difficult to debug. When they occur in the debugger, it offers some half-hearted advice about possible "marshalling" errors. The arrows point to various random parts of the code, usually associated with opening a form, but not always.
What I need is a methodology for tracing these crashes back to the memory leak, out-of-bounds array, or whatever is causing them, without simply "looking at the code". It would be a needle in a haystack. Thanks in advance.