線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1585
推到 Plurk!
推到 Facebook!

[bcb]這個錯誤訊息要怎麼解決呢 麻煩一下

答題得分者是:richtop
ii
一般會員


發表:1
回覆:1
積分:0
註冊:2004-11-07

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-11-07 15:46:41 IP:61.228.xxx.xxx 未訂閱
有一個範例程式 本來在我的電腦上可以執行 後來突然不能用了,重開機以後還是不行,這個程式我copy去別的電腦上跑還是沒問題的 程式執行後 當我在開啟圖片(loadfromfile)時 就會出現以下的錯誤訊息 --------------------------------------------------------------------- Project DEMO.exe raised exception class Eaccess violation with message"access violation at address 00401D46 in module 'DEMO.exe'. 'read of address B3B3B976'. Proccess stopped. Use Step or Run to coutiune --------------------------------------------------------------------- 錯誤發生後指標會停留在 jpgImg->LoadFromFile(opdLoadImage->FileName); --------------------------------------------------------------------- 程式的內容 void __fastcall TFrmMain::miLoadFileClick(TObject *Sender) { int i,j; int Flag; TJPEGImage *jpgImg=new TJPEGImage; char c1[10]; opdLoadImage->Filter = "Image file(*.jpg,*.bmp) |*.JPG; *.JPEG; *.BMP"; opdLoadImage->Execute(); imgOriginal->Visible=true; imgShow->Visible=false; imgEdge->Visible=false; Flag=j=0; for(i=1;i<=opdLoadImage->FileName.Length();i ) { if(Flag==1) c1[j ]=opdLoadImage->FileName[i]; if(opdLoadImage->FileName[i]=='.') Flag=1; } c1[j]='\0'; if(strcmp(c1,"bmp")==0) { imgOriginal->Picture->LoadFromFile(opdLoadImage->FileName); } else { jpgImg->LoadFromFile(opdLoadImage->FileName); imgOriginal->Picture->Bitmap->Assign(jpgImg); imgOriginal->Refresh(); } . . . ---------------------------------------------------------------- 麻煩一下 ^^
richtop
資深會員


發表:122
回覆:646
積分:468
註冊:2003-06-10

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-11-07 16:24:46 IP:211.76.xxx.xxx 未訂閱
ii 您好:    有一個地方怪怪的: if(strcmp(c1,"bmp")==0)  c1存的是圖檔的附檔名,但是有可能附檔名是大寫,所以就會有將.bmp當成.jpg讀入的現象。    另外有幾個建議,供您參考: 1.可利用 ExtractFileExt(filename) 函式取出附檔名,節省您的時間。 2.圖檔一律透過Image讀入,再將其轉為Bitmap格式。
void JpgToBmp(TImage *image)
{ Graphics::TBitmap *bmp = new Graphics::TBitmap();      bmp->Width  = image->Picture->Width;
  bmp->Height = image->Picture->Height;
  bmp->Canvas->Draw(0,0,image->Picture->Graphic);
  image->Picture->Bitmap->Assign(bmp);
  image->Refresh();      delete bmp;
}
RichTop 敬上 =====***** 把數學當工具,可以解決問題;將數學變能力,能夠發現並解決問題! =====#####
ii
一般會員


發表:1
回覆:1
積分:0
註冊:2004-11-07

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-11-07 21:46:31 IP:61.228.xxx.xxx 未訂閱
哇 可以正常執行了ㄟ 真是太感激你了 : ) 我還以為我的bcb是出了什麼問題 差一點把他重灌^^|| 不過為什麼 我在學校的電腦用TJPEGImage 的方式開圖就可以,家裡的電腦跑就不行呢??
系統時間:2024-06-08 7:57:29
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!