Einzelnen Beitrag anzeigen

Benutzerbild von sirius
sirius

Registriert seit: 3. Jan 2007
Ort: Dresden
3.443 Beiträge
 
Delphi 7 Enterprise
 
#7

Re: Zugriffsverletzungen abfangen

  Alt 10. Okt 2008, 15:05
Die Exception kommt nicht bei Loadfromfile sondern bei einer darauffolgenden WM_Paint an das Control.

Edit1:
Und wen es noch genauer interessiert:
Die Exception kommt aus der Unit jpeg und der relevante ASM-Teil sieht folgendermaßen aus:
Delphi-Quellcode:
asm
  ...

 @begin
  
  ...
  
  mov eax,[ebp+$0c]
  mov eax,[eax]
  add dword ptr [ebp+$0c],$04
  
  ...
  
  mov [eax],bl //<--Exception
  
  ...
 
  dec dword ptr [ebp+$08]
  jns @begin
 
  ...
end;

Edit2:
Und wie das ganze jetzt umgehen?
z.B. so:
Delphi-Quellcode:
procedure TForm1.FormDblClick(Sender: TObject);
begin
  try
    Image1.Picture.LoadFromFile(ExpandFileName('.\20326.jpg'));
    Image1.Repaint;
  except
    on E:EAccessViolation do
      ShowMessage('2');
  end;
end;
Das ändert aber nichts an dem Fehler im Bild (oder in der Unit jpeg)
Dieser Beitrag ist für Jugendliche unter 18 Jahren nicht geeignet.
  Mit Zitat antworten Zitat