Einzelnen Beitrag anzeigen

Incocnito

Registriert seit: 28. Nov 2016
210 Beiträge
 
#2

AW: TObject in DLL: Zugriffsverletzung beim Schließen

  Alt 23. Mär 2022, 16:16
Moin,

ohne Ahnung von irgendwas ...
In
constructor TdmPenta.Create();
setzzt du die Eigenschaft "Session" von "qryAbf".
In Destroy gibt du erst das komplette "qryAbf" frei und dann das Objekt, was du in der Eigenschaft "Session" hinterlegt hattest. Vielleciht gibt qryAbf das schon selbst frei.
Setze das vorher mal auf "nil":
Delphi-Quellcode:
destructor TdmPenta.Destroy;
begin
  try
    qryAbf.Session := nil; // <- Test
    FreeAndNil(qryAbf);
    FreeAndNil(osnPenta); // <==== Problemstelle
    FreeAndNil(oPS);
    if Assigned(oPenta) then begin
      FreeAndNil(oPenta);
    end;
  except on E : Exception do begin
      dbg('FSGVBA - Destroy Fehler aufgetreten: ' + E.Message);
    end;
  end;
  inherited;
end;
So zum Testen .. vielleicht reicht das ja schon.

LG Incocnito
  Mit Zitat antworten Zitat