全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1546
推到 Plurk!
推到 Facebook!

在BCB使用MFC發生Link Error CPtrList問題

尚未結案
KuoWeichung
一般會員


發表:2
回覆:4
積分:1
註冊:2005-05-20

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-05-20 16:37:27 IP:211.78.xxx.xxx 未訂閱
以下是我的整個執行過程 辨識過程全部完成 但是在加入 PP_RETURNTYPEList *ppReturnList = new PP_RETURNTYPEList; 這行指令後 就出現以下的LinkError [Link Error]Unresolved external 'CPtrList:~CPtrList()' referenced from D:\OCR\WISEOCR\FRMDLLMAIN.OBJ [Link Error]Unresolved external 'CObject::GetRuntimeClass() const' referenced from D:\OCR\WISEOCR\FRMDLLMAIN.OBJ [Link Error]Unresolved external 'CPtrList::CPtrList(int) referenced from D:\OCR\WISEOCR\FRMDLLMAIN.OBJ [Link Error]Unresolved external 'CPtrList::GetRuntimeClass() const' referenced from D:\OCR\WISEOCR\FRMDLLMAIN.OBJ    我的include檔 有加入#include  以及#include Advanced Compiler->Source有選MFC Compatibility Linker->Linking選Use dynamic RTL 請問我是少Link了什麼lib還是少做了什麼設定嗎 以下為source code bool pbOk; int piReturn; //讀取影像檔(支援多一檔多頁的檔案格式) (FARPROC&)PPOCR_ConvertDIBFromImageFileEx=GetProcAddress(hInst, "PPOCR_ConvertDIBFromImageFileEx"); //傳入影像及設定的參數進行辨識,返回後的 PP_RETURNTYPE 結構為辨識結果 (FARPROC&)PPOCR_DARecognize=GetProcAddress(hInst, "PPOCR_DARecognize"); //將辨識結果儲存成不同的文件格式(支援多頁存檔) (FARPROC&)PPOCR_SaveFile=GetProcAddress(hInst, "PPOCR_SaveFile"); //釋放辨識結果所佔用的系統資源 (FARPROC&)PPOCR_DARecognizeFree=GetProcAddress(hInst,"PPOCR_DARecognizeFree"); //釋放 DIB 影像使用的記憶體 (FARPROC&)PPOCR_DIBFree=GetProcAddress(hInst,"PPOCR_DIBFree"); //釋放由 PPOCR_ConvertDIBFromImageFileEx 得到的 DIB handle array 記憶體 (FARPROC&)PPOCR_DestroyDIBs=GetProcAddress(hInst,"PPOCR_DestroyDIBs"); //讀取圖形檔後將其轉換為 DIB 格式 m_iTotalPage=0; PPOCR_DestroyDIBs(m_iTotalPage,m_lphDibList); m_lphDibList=NULL; m_iTotalPage=1; piReturn=PPOCR_ConvertDIBFromImageFileEx(edPictureFile->Text.Trim().c_str(),m_iTotalPage,m_lphDibList); if(piReturn==PPDIB_SUCCESS) { ShowMessage("轉換DIB成功"); } else { rerurn; } PP_INPUTINFO *m_ppInputInfo=new PP_INPUTINFO; PP_RETURNTYPE *m_ppReturnType=new PP_RETURNTYPE; m_ppInputInfo->hDib=m_lphDibList[0]; m_ppInputInfo->ppMode.sMode=PP_MODE_MIX; //語言:混合 m_ppInputInfo->ppMode.sImageType=PP_DOC_UNKNOWN; //影像文件類別:其他種類 m_ppInputInfo->ppMode.sFileType=PP_CHAR_PRINTED; //影像文件類型:印刷字體 m_ppInputInfo->ppCharSet.sRecogCharSet=PP_CHARSET_BIG5_13051; //要進行辨識的字元種類:BIG5 擴展字庫 m_ppInputInfo->ppCharSet.sOutCharSet=PP_CODE_BIG5; //輸出的字元種類:輸出字庫取BIG5字庫 m_ppInputInfo->ppAutoOption.bAuto=TRUE; //是否進行自動操作 m_ppInputInfo->ppAutoOption.sAuto=(short)PP_AUTO_ALL; //全部自動選項開啟 m_ppInputInfo->ppAnalysis.sReconCharFont=PP_FONT_MIXED; //進行分析的文件字體:綜合字體類型 m_ppInputInfo->ppAnalysis.sFlowOrient=PP_ORIENT_AUTO; //文件排版方式:自動 m_ppInputInfo->ppAnalysis.sDirection=PP_DIR_AUTO; //文件書寫方式:自動確定書寫方式(由左至右,由右至左) m_ppInputInfo->ppProcessBar.hProgressBar=NULL; m_ppInputInfo->ppProcessBar.ProgressCallBack=NULL; //傳入影像及設定的參數進行辨識,返回後的 PP_RETURNTYPE 結構為辨識結果 piReturn=PPOCR_DARecognize(m_ppInputInfo,m_ppReturnType); if(piReturn!=PPREG_SUCCESS) { ShowMessage("辨識失敗,錯誤碼" IntToStr(piReturn)); //釋放 DIB 影像使用的記憶體 PPOCR_DestroyDIBs(m_iTotalPage,m_lphDibList); return; } PP_RETURNTYPEList *ppReturnList = new PP_RETURNTYPEList; // ppReturnList->AddTail(m_ppReturnType); // ppReturnList[0]=m_lphDibList; //將辨識結果儲存成不同的文件格式(支援多頁存檔) // PPOCR_SaveFile(PP_RETURNTYPEList *ppReturnList,LPCTSTR szFileName,int iFileType,void *pExtData); delete ppReturnList; //釋放辨識結果所佔用的系統資源 PPOCR_DARecognizeFree(m_ppReturnType); //釋放 DIB 影像使用的記憶體 PPOCR_DestroyDIBs(m_iTotalPage,m_lphDibList); delete m_ppInputInfo; delete m_ppReturnType;
taishyang
站務副站長


發表:377
回覆:5490
積分:4563
註冊:2002-10-08

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-05-22 18:39:28 IP:218.169.xxx.xxx 未訂閱
您好:    PO程式碼的方式請參考版規說明,煩請修改謝謝您的配合 >
KuoWeichung
一般會員


發表:2
回覆:4
積分:1
註冊:2005-05-20

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-05-23 18:48:11 IP:211.78.xxx.xxx 未訂閱
已經解決了這個問題 發現無關於Advanced Compiled是否選擇MFC 只在於少Link了兩個lib bfc42.lib bfcs42.lib 加到專案後,就可以正確執行了 P.S.:如果要Compile Debug的版本 要加 bfc42d.lib bfcs42d.lib
系統時間:2024-05-07 8:19:02
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!