C++/I bet you can't figure this one out.
Help! Everyone at my work is also stumped on this one as well.
Our MFC program is crashing when I try to save large amounts of data. This project was created by someone else and what he did was subclass the COleDocument class.
In this subclass there is a function called:
BOOL TDocument::OnSaveDocument( LPCTSTR lpszPathName )
// Do the actual saving; this is from the original code:
The SaveToStorage() is where the problem is coming from. It crashes in this MFC function.
Here is the error message:
The instruction at "0x73dd1351" referenced memory at "0x00000004". The memory could not be "read".
No one knows the answer and how to solve this problem. It is critical bug our customers face.
Any hints/help or direction for further information would be greatly appreciated!
Any workarounds for this problem will also be greatly appreciated.
M.J. , Thank you for your question.
"I bet you can't figure this one out."
You win your bet. By supplying a minimal amount of information, you can always increase your odds of stumping someone who otherwise might be able to help.
There are many ways to create programs that will generate memory access faults. You have said that the problem occurs in a function "SaveToStorage" and that the faulting instruction is at address 0x73dd1351 in some process address space. This information is insufficient to solve the problem.
I suggest that the way to fix this critical bug is to hire someone who knows how to debug computer programs. There is no shortcut; one must study the program and use debugging tools.
The only workaround I can think of, given what you have told me, is to ask your customers to save less data. Unfortunately, there is no substitute for professional software engineering. If you must fix this problem and have no alternative, you might consider hiring a contract software engineer located near where you work just for the duration of this one problem fix. There are probably organizations on the Web who maintain lists of available engineers. You might also try contract software engineering companies and employment agencies.