Delphi 5, large packaged application. A programer's nightmare. Something I have done is overwriting memory. The symptom will not sit still.
Sometimes I can get a repeatable situation, and see exactly what is getting smashed (eg MyTable.Field[X].FieldName). But the moment I put any additional code in place, it moves around. So it seems like: if I can get one of the repeatable situations active, then set a "memory changed" breakpoint, I might have a hope of seeing who/where the culprit is. However, there are few simple variables, almost everything is accessed via some method. Thus I find the Delphi "Memory Watch/Break When Changed" difficult (impossible) to use. I have tried EurekaLog, MemProof and MemCheck (tools available via google), but ended up drowning in a flood of information which is either irrelevant or meaningless to me. What are people using to debug errors like this? Since I am overwriting "my own" memory space, no red flags are raised when the damage is done. It is only later, when the program tries to use the trashed memory, that mayhem occurs. Long ago under DOS I was able to kill this problem by knowing roughly what area was gettin smashed, setting 'memory changed' breakpoints over that area, and seeing what line I was executing when the memory was overwritten. I am unable to find a similar tool/approach for windows/Delphi. Any suggestions? Many thanks in advance.

