執行緒處理儲存大圖檔出現的錯誤訊息 |
尚未結案
|
esp_pzj
初階會員 ![]() ![]() 發表:32 回覆:70 積分:40 註冊:2007-02-09 發送簡訊給我 |
各位大大:
以下是 我的 執行緒程式碼: [code delphi] type TScanThread = class(TThread) private BmpTs:TBitmap; FileN:String; { Private declarations } protected procedure Execute; override; Public constructor create(g_bmpTs:TBitmap;g_FileN:String); end; constructor TScanThread.create(g_bmpTs:TBitmap;g_FileN:String); //var // jpg: TJpegImage; begin inherited create(false); Priority:=tpTimeCritical; //設定執行權限 FreeOnTerminate:=True; BmpTs:=g_bmpTs; FileN:=g_FileN; end; procedure TScanThread.Execute; var jpg1: TJpegImage; begin try Jpg1:=TJpegImage.Create(); Jpg1.Assign(bmpTs); jpg1.CompressionQuality := 65; DeleteFile('c:/' FileN '.jpg'); jpg1.SaveToFile('c:/' FileN '.jpg'); finally jpg1.Free; end; end; [/code] 執行上列執行緒 會出現 下列 二個 錯誤訊息: 一、 Project ScanRead.exe raised exceptio class EInvalidGraphic message 'Bitmap image is not valid'. Process stopped. 二、 Project ScanRead.exe raised exceptio class EAccess Violation with message 'Access violation at address 00403C18 in module 'Scan Read.exe'. read of address 00D7BFDC'. Process stopped. Use Step or Run to continue. 請教各位大大,如何解決這個問題? 處理的 圖檔大小 2024x2848 bmp格式約 11Mb, 執行緒設定最高權限 Priority:=tpTimeCritical; 出現上列錯誤訊息的的時間 會比較 慢出現 約 130張 出現錯誤訊息 執行緒設定一般權限 Priority:=tpNormal; 出現上列錯誤訊息的的時間 會比較 快出現 約 20張 出現錯誤訊息 補充一 另外將執行緒設定最高權限 Priority:=tpTimeCritical; 有時會出現 下列 錯誤訊息 ,我可以不要理會這個 錯誤訊息嗎? Project ScanRead.exe raised exceptio class EOutOfResources with message 'Out of system resources'. Process stopped.Use Step or Run to continue.
------
學藝不精 謝多多指教 編輯記錄
esp_pzj 重新編輯於 2008-12-12 14:20:08, 註解 補充一‧
|
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |