Invalid Pointer Operation, advice requested with debugging
- by Xanyx
I appear to have created code that is trashing memory.
Having never had such problems before, i am now settign an Invalid Pointer Operation.
In the following the value of the const string sFilename gets trashed after my call to PromptForXYZPropertiesSettings.
// Allow the user to quickly display the properties of XYZ without needing to display the full Editor
function PromptForXYZProperties(const sFilename:string; var AXYZProperties: TXYZProperties): boolean;
var
PropEditor: TdlgEditor;
begin
PropEditor:= TdlgEditor.create(nil);
try
PropEditor.LoadFromFile(sFilename);
Other Details:
Delphi 2007, Windows 7 64 bit, but
can reproduce when testing EXE on XP
REMOVING CONST STOPS PROBLEM FROM EXHIBITING (but presumably the
problem is thus just lurking)
PropEditor.PromptForXYZPropertiesSettings
creates and shows a form. If I
disable the ShowModal call then the
memory is not trashed. Even though i
have REMOVED ALL CONTROLS AND CODE
from the form
So I would like some advice on how to debug the issue. I was thinking perhaps watching the memory pointer where the sFilename var exists to see where it gets trashed, but not sure how i would do that (obviously needs to be done within the app so is owned memory).
Thanks