隨筆-80  評論-117  文章-0  trackbacks-0
          最近在搞一套OCR的程序,底層的OCR引擎是購買來,外面用VB包裝了一層。這套程序已經在其他地方的項目中使用過的?;它c時間把VB程序改造了下,在本機調試通過,準備部署到實際的服務器上。部署之后一運行,從log中發現沒有識別成功。懷疑是ocr引擎的問題,先用引擎自帶的demo程序測試下,一識別報找不到DLL的錯誤,查看了下該dll,發現的卻是在當前目錄有這個dll,用其他語言寫的demo也一樣報錯。

          ?查了下OCR SDK的開發手冊,手冊中到是提到了這個問題,給出的解決方案是把DLL和exe都放在同一個目錄下,二我當前就是這么做的。奇怪的,再測copy了DLL測試DLL本身并無損壞。把DLL都copy到system32下面也一樣無濟于事。把當然的路徑加到系統的path里面,也無效。怪事了,某非設置path要重啟之后才能生效。還好現在是下班時間,把服務器重新啟動了下。

          重啟之后立刻彈出N個對話框,ocr.exe因為遇到問題被系統數據執行保護關閉。TNN的原來是數據保護惹的禍。到數據保護里設置為只為系統進程和服務啟用,再次重啟果然解決問題了。這讓我想起以前在安裝一些InstallAnywhere打包的程序時也會遇到問題就好似數據執行保護引起的。

          把程序開起來進行識別,確發現識別數量一多就會報某某內存地址不能read的錯誤。kao,真是一bug剛滅一bug又起啊。調了半天也沒有結果,算了先回去睡覺,明天再解決。
          ? 第二天,也就是今天 呵呵,在msn向一個同事(VB高手)請教,他也說可能是數據執行保護的問題。我又查看了下程序的日志,突然來了靈感,發現出錯的有規律,有的錯誤是在識別同一份文件時發生的,查了下原來這份圖片是png格式的,測試了下果然是png不能識別。問題解決,特寫本篇blog記錄下。
          posted on 2007-07-28 12:21 南哥 閱讀(681) 評論(0)  編輯  收藏 所屬分類: 項目經驗

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 南投县| 新兴县| 藁城市| 威远县| 盘山县| 田东县| 麻阳| 南安市| 涪陵区| 西城区| 通榆县| 漳平市| 将乐县| 临安市| 十堰市| 射阳县| 青浦区| 林西县| 鄂托克旗| 根河市| 大埔区| 南雄市| 龙口市| 繁峙县| 华宁县| 濉溪县| 苗栗县| 泉州市| 牟定县| 肇源县| 丘北县| 文化| 泰安市| 宾川县| 绥中县| 莱西市| 临高县| 嘉峪关市| 桦甸市| 乌审旗| 江山市|