折騰了幾天,發(fā)現(xiàn)要寫的東東越寫越多,怕再這樣下去就沒頭了,因此前兩天總結(jié)一下,隨筆都寫好了,正想傳上來呢,結(jié)果發(fā)現(xiàn) Lingoes 升級。。。昨天和今天又重新檢查了一下,還好除了 Lingoes 增加了一個 F12 熱鍵外,其它變化不大,所以,今天先上傳一個版本來,省的夜長夢多啊。。。。有興趣的,這里可以
下載了。(CPPBlog 上傳有限制,只能放到 MSN 上了~)
開始先說一下 “技術(shù)參數(shù)”,
1. 需求:
a. WindowsXP(僅在 XP 上跑過,Vista,Win7 環(huán)境還真不知道。。);
b. Lingoes 支持 2.6.3 和 2.7.0,也許還有其它版本,只要缺省詞典是 Vicon 的應(yīng)該就可以(Lingoes2.7.0 有個標準版,這個不行,要用簡體中文版);
2. 安裝:
a.
下載運行 LingosHook_Setup.7z,缺省安裝在 Program Files 下面;
b. 卸載可以在控制面板中的‘添加刪除’里面找到,卸載后,本地數(shù)據(jù)文件會被保留,如果不需要了,可刪除;
c. 程序不對注冊表做改動,所有文件都在一個目錄下面;
3. 運行:
a. 安裝后,程序名稱為 LingosHookApp,點擊運行;
b. 程序執(zhí)行后,在保證 Lingoes 已經(jīng)運行的情況下可以點擊主界面中的‘Hook’鍵,開始抓取 Lingoes 彈出窗口的查詢結(jié)果;
c. 也可以在‘Hook’后,使用熱鍵 (缺省 Ctrl+F10),抓取主界面中的查詢結(jié)果;
4. 已知 Bugs:
a. 無法抓取結(jié)果:多數(shù)可能是其它詞典結(jié)果干擾所致,此時設(shè)置 Lingoes 的詞典即可,一般是關(guān)閉使用‘在線’方式的詞典,最簡單的方法就是只使用 Vicon 詞典。。。(這個問題會盡快改掉,太不靠譜了。。。)
b. 點擊‘Unhook’鍵時,程序出錯:目前定位在卸載 Hook 動態(tài)庫有問題,要解決的話就是要不從來不點擊‘Unhook’,要不就出錯了,重啟 LingosHook(也不靠譜。。。)
下面是前兩天寫的,因為沒啥太大變化,不重寫了。。。
LingosHook 此次變化如下:
1. 通過解析 HTML 數(shù)據(jù)分析結(jié)果數(shù)據(jù);
2. 支持 Hotkey 方式截取 Lingoes 主窗口的結(jié)果;
3. 自動檢查 Lingoes 主窗口使用的語言,當前僅支持中文和英文界面;
4. 可以刪除結(jié)果數(shù)據(jù)了(最基本的功能,只是上次忘記了。。。);
5. 輸入自動匹配;在輸入框輸入單詞時,能夠自動匹配最接近的單詞,并顯示結(jié)果;(看是基本功能,但 Combobox 控件還真不支持,只能自己寫。。。)
6. 新的參數(shù)配置,并且可以都保存了(基本功能,上次懶了。。。)
7. 增加了統(tǒng)計數(shù)據(jù);記錄了單詞的查詢時間和次數(shù),為以后可能的統(tǒng)計功能做準備;
就上面這些了,這次改動還是挺多的,也練習(xí)了許多新的代碼,如 HTML 的解析,wxWidgets 控件自定義事件消息(這個是為了實現(xiàn) ComboBox 的自動匹配功能),等等。后面還有很多功能需要添加,如多詞典支持,當前僅支持 Lingoes 默認使用的 Vicon E-C 詞典(這個是體力活。。。),界面字體設(shè)置(缺省字體尺寸為 8,太小了,現(xiàn)在放大到 10 了,但能夠設(shè)置才比較靠譜。),統(tǒng)計功能的展現(xiàn)等等,當然,添加圖標也是需要的,但我一直都沒搞明白原理。。。這次也省了先吧。。。
好了,傳圖,展示并當幫助說明文檔了。
1. 主界面
界面跟上次沒有變化,在左上側(cè)輸入框中可以輸入查詢的單詞,LingosHook 將自動匹配最靠近的單詞,并顯示結(jié)果。相關(guān)功能為:
1. 在輸入框中輸入單詞后,若回車,LingosHook 會將當前輸入記錄在輸入框的下拉框中,方便下次使用,但并不保存輸入數(shù)據(jù),關(guān)閉即清除;
2. 選擇左側(cè)單詞列表框中的單詞,會在右側(cè)結(jié)果框中顯示結(jié)果;此時按下 Ctrl 鍵和 Del 鍵將刪除選定的單詞;
3. 右側(cè)結(jié)果框中顯示的結(jié)果為,單詞,音標,出處(詞典),詞類和解釋;其統(tǒng)計結(jié)果在 Stats. 項目里,默認不顯示,可點開查看;
4. 右側(cè)輸入框下面 Tab 用于切換各顯示窗口;
5. 右下側(cè)的‘Hook’按鈕是 LingosHook 的最核心功能;按下此按鈕,LingosHook 將 Hook 到 Lingoes 中,開始抓取查詢數(shù)據(jù),再次點擊將 Unhook,LingosHook 停止抓取??煞磸?fù)點擊此按鈕,用于切換抓取和不抓取數(shù)據(jù)狀態(tài);若 LingosHook Hook Lingoes 失敗,如 Lingoes 未啟動,LingosHook 將顯示一個‘Hook Failed.’的錯誤提示框。
2. HTML 界面
3. 參數(shù)設(shè)置界面
此界面用于設(shè)置 LingosHook 的參數(shù),說明如下:
1. Lingoes Configuration - User Interface Language:用于設(shè)置當前 Lingoes 使用的界面語言,默認是自動檢測配置'Auto-Detect';當前只支持中文和英文兩種界面;
2. System Configration - Use Hotky:此參數(shù)用于設(shè)置抓取 Lingoes 主窗口查詢數(shù)據(jù)的熱鍵,默認開啟,熱鍵為 Ctrl+F12,還可以設(shè)置為 Alt+Ctrl+F12,Ctrl+F11,Alt+Ctrl+F11,Ctrl+F10 以及 Alt+Ctrl+F10;若關(guān)閉此參數(shù),即不使用熱鍵功能,將無法抓取 Lingoes 主窗口查詢數(shù)據(jù);
3. Debug Configure - Open Trace:此參數(shù)用于調(diào)試使用,當開啟是,可在 Trace 界面中獲得在 Lingoes 中抓取的原始數(shù)據(jù);默認此參數(shù)是關(guān)閉狀態(tài)的;
4. Apply 按鈕:點擊此按鈕,將保存當前配置,但當前部分配置并不能馬上生效,需要重啟 LingosHook;目前能實時生效的只有 Open Trace 配置。
4. Trace 界面
此界面用于調(diào)試使用,可以查看從 Lingoes 抓取的原始數(shù)據(jù)。
介紹就這些,有問題請跟帖,安裝文件這里
下載。嚴重提示--安裝前請殺毒。(我并不寫病毒,但網(wǎng)絡(luò)不安全,使用須謹慎啊。。。)