ReleaseStringList
Overige functies
Beschrijving
Geeft een stringlijst vrij die eerder door een andere API-functie is geretourneerd (bijvoorbeeld CheckFileCompliance). Na deze aanroep is de StringListID-handle niet langer geldig en mag deze niet worden doorgegeven aan GetStringListCount of GetStringListItem
Syntaxis
Delphi
Function TPDFlib.ReleaseStringList(StringListID: Integer): Integer;
ActiveX
Function PDFlib::ReleaseStringList(StringListID As Long) As Long
DLL
int DLReleaseStringList(int InstanceID, int StringListID);
Parameters
| StringListID | De ID van de vrij te geven stringlijst, zoals eerder geretourneerd door een producerfunctie |
|---|
Retourwaarden
| 0 | StringListID is invalid or does not reference a string list owned by this instance. |
|---|---|
| 1 | De lijst is met succes vrijgegeven |
Opmerkingen
Stringlijsten zijn in eigendom van de PDFlib-instantie die ze heeft geproduceerd. Ze worden automatisch vrijgegeven wanneer de instantie wordt vernietigd, dus expliciet vrijgeven is normaal optioneel. Roep ReleaseStringList aan in langlopende processen die veel lijsten produceren (bijvoorbeeld een CI-worker die honderden PDF's achter elkaar valideert) om het geheugengebruik begrensd te houden
Voorbeeld
// 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;