Hallo, ich hab hier n kleines Problemschen... Ich ruf ne Klassenmethode auf, die eine Windows-Message verarbeiten soll:
Delphi-Quellcode:
procedure TFLogMan.OnWMCopyData(var Msg: TWMCopyData);
begin
ShowMessage(BoolToStr(Assigned(Logman),True));
LogMan.Handle(Msg);
end;
Und da gibts jetzt eine "
Exception Lesen An Adresse 000008". Immer. Das ganze muss in der
Handle-Methode in einem bestimmten bereich passieren, wenn ich da was auskommentiere, läufts ohne Murren.
Wenn ich da jetzt Haltepunkte reinsetz, wird die Zeile grün markiert und die Haltepunkte bekommen ein "x" verpasst - sprich, nicht identifizierbare Codestelle. Denke ich mir, vielleicht liegts an den ganzen Komentaren, gut. Machst du dir schnell eine Logfunktion:
Delphi-Quellcode:
procedure Log(s:string);
var b: string;
begin
b := s + #13#10;
with TFileStream.Create('C:\loglog.log',fmCreate) do
begin
try
Write(b,length(b));
finally
Free;
end;
end;
end;
Wenn ich damit aber jetzt logge, krieg ich nur absoluten Mist in die Datei.... sprich Kästchen. ich hab also keien Ahnung, was falsch läuft.
Könnte es sein, dass Delphi da irgendwas vermurkst, so dass es
a) die Breakpoints nicht mehr identifizieren kann
b) die strings verwurschtelt
c) sich bei irgendner adresse verhaspelt, was zu "Lesen von 00008" führt?