Einzelnen Beitrag anzeigen

Aviator

Registriert seit: 3. Jun 2010
1.611 Beiträge
 
Delphi 10.3 Rio
 
#10

AW: Access Violation - OnFilterRecord - UniDAC

  Alt 24. Okt 2016, 08:45
Zugriffsverletzungen erscheinen nur dann, wenn auf eine nicht (mehr) existente Instanz zugegriffen wird. In dem Fall ist Field wohl nil. Jetzt gilt es, herauszufinden wieso das der Fall ist.
Das ist mir bewusst, was die AV aussagt.
Daher habe ich schon probiert vorher mit if assigned zu arbeiten, allerdings ohne Erfolg.
Naja gut. Assigned() prüft aber nur, ob die Variable nicht nil ist. Wenn die Variable aber noch auf ein Objekt zeigt welches mal existiert hat, aber mit Free freigegeben wurde, dann gibt dir Assigned() trotzdem true aus.

Himitsu hat ja gemeint, dass FieldByName selbst auf Assigned() prüft. Vielleicht passiert dann ja im Hintergrund noch was. Gibst du das DataSet irgendwo wieder frei? Bspw. in einem Timer Event oder so? Nicht das sich da etwas beist.
  Mit Zitat antworten Zitat