Crash-Isolated Codec Workers

HotPDF có thể đưa việc giải mã ảnh rủi ro cao DCTDecode, JPXDecode, và JBIG2Decode ra khỏi tiến trình host

Chế độ cô lập

Khi một worker có sẵn chấp nhận một yêu cầu, cimAutomatic không thử lại đầu vào lỗi hoặc độc hại trong tiến trình host

Ranh giới tiến trình

Mỗi yêu cầu giải mã chạy trong một tiến trình ẩn mới được gán cho một Windows Job Object đơn tiến trình

Cấu hình

PDF.CodecIsolationMode := cimRequired;
PDF.CodecWorkerExecutable :=
  'C:\Program Files\MyApp\HotPDFCodecWorker.exe';
PDF.CodecWorkerTimeoutMilliseconds := 5000;
PDF.CodecWorkerMemoryLimitBytes := 256 * 1024 * 1024;

Bitmap := PDF.ExtractLoadedImage(0);
if Bitmap = nil then
begin
  PDF.GetLastCodecWorkerInfo(Info);
  Writeln(Ord(Info.Status), ': ', Info.ErrorMessage);
end;

Một CodecWorkerExecutable rỗng giải quyết thành HotPDFCodecWorker.exe bên cạnh ứng dụng hiện tại

Đo lường

GetLastCodecWorkerInfo báo cáo trạng thái, định danh tiến trình, mã thoát, mili giây đã trôi qua, và một chẩn đoán phía host có giới hạn

GetLastJPEGReducedDecodeInfo báo cáo hình học nguồn, thu nhỏ, đầu ra, và scanline sau một yêu cầu JPEG giảm cô lập

Các trạng thái riêng biệt bao phủ worker không có sẵn hoặc không khởi chạy được, hết thời gian, sập, từ chối giải mã, không khớp giao thức, và giới hạn đầu ra đã giải mã

Xây dựng và triển khai

build-HotPDF-Codec-Worker.cmd

Lệnh xây dựng phát ra worker Win32 và Win64 riêng dưới tools\CodecWorker\<platform>\Release; hãy triển khai worker khớp kiến trúc tiến trình host

API liên quan