S'ha de tenir en compte que quan es treballa amb un TADOQuery i es vol fer servir un bookmark, si fem servir el mètode getBookMark s'ha d'alliberar la memòria. Això es degut a que getBookMark reserva un espai de memòria per guardar el punter.
function TDataSet.GetBookmark: TBookmark;
begin
  if BookmarkAvailable then
  begin
    GetMem(Result, FBookmarkSize);
    GetBookmarkData(ActiveBuffer, Result);
  end else
    Result := nil;
end;
Per tant s'hauria d'alliberar la memòria en aquests casos. Per a fer-ho tenim el mètode FreeBookMark(Bookmark: TBookmark). Que allibera el punter bookmark.
Codi d'exemple:
    // Guardem on tenim situat el cursor actualment en el QDiari
    QDiariBookmark := QDiari.GetBookmark;
    try
    ..... Aquí podem afegir qualsevol codi
    finally
        QDiari.FreeBookmark(QDiariBookmark);
    end;
miércoles, 5 de noviembre de 2008
Suscribirse a:
Comentarios (Atom)
 
