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);
參數
| StringListID | 要釋放的字串清單 ID,先前由產生函式傳回。 |
|---|
傳回值
| 0 | StringListID 無效,或未指向此實例持有的字串清單。 |
|---|---|
| 1 | 清單釋放成功。 |
備註
字串清單由產生它們的 PDFlib 實例持有,實例摧毀時自動釋放,因此明確釋放通常可省略。會產生大量清單的長時間行程(例如依序驗證幾百份 PDF 的 CI worker)請呼叫 ReleaseStringList,把記憶體用量壓在有界範圍內。
範例
// 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;