ReleaseStringList

Разные функции

Описание

Освобождает список строк, ранее возвращенный другой функцией API (например, CheckFileCompliance). После вызова дескриптор StringListID недействителен и его нельзя передавать в GetStringListCount или GetStringListItem

Синтаксис

Delphi

Function TPDFlib.ReleaseStringList(StringListID: Integer): Integer;

ActiveX

Function PDFlib::ReleaseStringList(StringListID As Long) As Long

DLL

int DLReleaseStringList(int InstanceID, int StringListID);

Параметры

StringListIDID освобождаемого списка строк, ранее возвращённого функцией-производителем

Возвращаемые значения

0StringListID is invalid or does not reference a string list owned by this instance.
1Список успешно освобождён

Примечания

Списки строк принадлежат экземпляру PDFlib, который их создал. Они освобождаются автоматически при уничтожении экземпляра, поэтому явное освобождение обычно необязательно. Вызывайте ReleaseStringList в долгоживущих процессах, порождающих много списков (например, CI-воркер, валидирующий сотни PDF подряд), чтобы удерживать потребление памяти ограниченным

Пример

// Validate many files in a loop, releasing each result list as soon as it has been logged
var
  I, Issues, Count, J: Integer;
begin
  for I := 0 to Files.Count - 1 do
  begin
    Issues := PDF.CheckFileCompliance(Files[I], '', 1, 0);
    if Issues <> 0 then
    begin
      Count := PDF.GetStringListCount(Issues);
      for J := 1 to Count do
        WriteLn(Files[I], ' : ', PDF.GetStringListItem(Issues, J));
      PDF.ReleaseStringList(Issues);
    end;
  end;
end;

См. также

GetStringListCount, GetStringListItem, CheckFileCompliance