Worker Codec Terisolasi dari Crash

HotPDF dapat memindahkan dekode gambar DCTDecode, JPXDecode, dan JBIG2Decode berisiko tinggi keluar dari proses host

Mode isolasi

Setelah worker yang tersedia menerima permintaan, cimAutomatic tidak mencoba ulang input yang gagal atau berbahaya di proses host

Batas proses

Setiap permintaan dekode berjalan dalam proses tersembunyi baru yang ditetapkan ke Windows Job Object proses tunggal

Konfigurasi

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;

CodecWorkerExecutable kosong diselesaikan ke HotPDFCodecWorker.exe di samping aplikasi saat ini

Telemetri

GetLastCodecWorkerInfo melaporkan status, pengidentifikasi proses, kode keluar, milidetik yang berlalu, dan diagnostik sisi host yang dibatasi

GetLastJPEGReducedDecodeInfo melaporkan geometri sumber, skala, keluaran, dan scanline setelah permintaan JPEG tereduksi terisolasi

Status yang berbeda mencakup worker yang tidak tersedia atau tidak dapat diluncurkan, kehabisan waktu, crash, penolakan dekode, ketidakcocokan protokol, dan batas keluaran terdekode

Pembuatan dan penerapan

build-HotPDF-Codec-Worker.cmd

Perintah pembuatan mengeluarkan worker Win32 dan Win64 terpisah di bawah tools\CodecWorker\<platform>\Release; terapkan worker yang cocok dengan arsitektur proses host

API terkait