• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            Codejie's C++ Space

            Using C++

            LingosHook:Lingoes生詞本第八版


                雖然關于List的問題窗口句柄等問題一直搞不定,但還是先把手里的上傳吧,這些問題就當作已知Bug存在了,希望影響不大(心虛~)。新版本這里下載。
                此次更新涉及較多,主要分散在下面幾點:
                1. 支持直接HTML數據的保存和讀取;這樣如果沒有Vicon和Langdao兩種詞典,一樣可以使用了,只是體驗上會少些功能;
                2. 針對上面的功能,相應地增加了兩個配置項;
                3. 增加了生詞發音;現在可以聽了(這個我喜歡~);
                4. 結果界面中添加了和生詞列表一樣的右鍵菜單;菜單使用說明見這里
                5. 支持模糊定位Lingoes窗口,希望能減少Hook失敗率;

                這幾天的主要工作都在修修補補HTML數據的直接存取上,消耗了大量時間;而語音和菜單部分加起來不到兩小時,比想象的簡單需多。不多扯了,上圖解說~

                先看看新增的配置:


                藍色框內的兩項為新增項,是用于對直接HTML數據存取做配置的,兩個配置項是互斥的;
                1. 第一項(Ignore Dictionary Analysis Error)指定當HTML數據到達時,先嘗試使用詞典解析,如果解析失敗,比如沒有能支持的詞典數據,則將HTML數據直接保存下來;
                2. 第二項(Close Dictionary Analysis Process)指定當HTML數據到達是,不進行詞典解析過程,直接將HTML數據保存下來;

                選中任何一項,都會自動選中'HTML Data Process' 中的兩個配置項(Storage,Loading),理由很簡單,如果不選中這兩個,HTML數據是沒法顯示的。。。兩個配置項的區別在于是否調用詞典解析過程,對于完全不使用Vicon或Langdao的人來說,不調用詞典解析,可以稍微稍微提高點性能。。。兩個配置項默認是關閉的,因為不經過解析的數據,只能在HTML界面中查看,且可能會有大量無用數據,體驗不好,如下圖所示。

                 直接HTML數據存取很好,很強大!由于抓取跟解析無關,跟直接截屏差不多,因此強大到對付中文或者其它語言文字一樣有效,這個是我開始沒有想到的。。。

                結果界面中的右鍵ContextMenu菜單,功能和生詞列表中的右鍵菜單功能一樣;


               如上圖,看見么,支持Speak了!雖然很簡單,但至少能發音了,我喜歡。。。(打算給自己做個版本,支持Hotkey發音,或者自動發音,嘿嘿。。。)


              前面說到的bug會在配置了直接HTML數據讀取情況下,使用Hotkey時出現,如下圖:


                輸入的是‘bugxxx’,查詢到的是‘bugs’,期望抓取的生詞應該也是‘bugs’,但由于沒法訪問到Lingoes的單詞列表數據,只能將就先取輸入框的錯誤數據了。這個問題以后看吧,我現在完全沒頭緒如何修正。

                關于窗口句柄的模糊查詢,看看下面代碼就明白了~
                原來的代碼:
            HWND hwnd = ::FindWindow(_T("Afx:400000:2400b:10011:0:0"), NULL);

                修改后的代碼:
                            wchar_t buf[64];
                            size_t s 
            = 0;
                            HWND hwnd 
            = ::FindWindowEx(NULL, NULL, NULL, NULL);
                            
            while(hwnd != NULL)
                            
            {
            //                    wcsnset(buf, 0, 64);
                                ::GetClassName(hwnd, buf, 64);
                                s 
            = wcslen(buf);
                                
            if(s > 17)
                                
            {
                                    
            if(wcsncmp(buf, _T("Afx:400000:2400b:"), 17== 0)
                                    
            {
                                        
            break;
                                    }

                                }


                                hwnd 
            = ::FindWindowEx(NULL, hwnd, NULL, NULL);
                            }

                增加了循環查詢,性能會。。。唉,我也不想,但真的不知道為什么這個句柄的值會變化。。。



            <---講故事的分割線--->

                實際這篇隨筆早寫好了,但每次要提交時,總是出現一個不得不改的bug,比如列表bug,比如句柄變化等等,到今天,實在沒耐心了,傳上再說吧。。。


            <---講心情的分割線--->

                LingosHook將Open Source了。。。但無聊的xxx限制了code.google.com的訪問,害的我不得不翻墻走,這也導致open的進展很慢。。。我實在想不明白,封了VOA就算了,code.google.com又咋了?閉關鎖國會導致閉門造車,而閉門造車會導致科技落后,而科技落后會被挨打的,歷史已經多次驗證了這條理論,為什么xxx現在還做這樣的事情。。。

            posted on 2010-04-20 23:24 codejie 閱讀(2394) 評論(2)  編輯 收藏 引用 所屬分類: 輪子精神LingosHook

            評論

            # re: LingosHook:Lingoes生詞本第八版 2010-07-08 16:00 chassic

            弄了一個小時,終于可以用了,贊一個,還開源了
            讓我弄簡明的安裝吧  回復  更多評論   

            # re: LingosHook:Lingoes生詞本第八版 2010-07-08 16:54 codejie

            @chassic
            能用了就好。。。
            程序是用VC20008Express開發的,需要其運行庫,擔心未安裝此運行庫的系統無法運行,所以才使用VS自帶的安裝工程。如果你能幫忙做個安裝,甚至來個‘綠色版’,那真是要辛苦你了,謝謝~  回復  更多評論   

            公告

            Using C++

            導航

            統計

            留言簿(73)

            隨筆分類(513)

            積分與排名

            最新評論

            閱讀排行榜

            評論排行榜

            久久99亚洲综合精品首页| 久久影院午夜理论片无码| 日产精品99久久久久久| 久久久久亚洲AV无码观看| 中文无码久久精品| 日产精品久久久久久久| 成人综合伊人五月婷久久| 天天久久狠狠色综合| 欧美日韩精品久久久久| 欧美日韩精品久久久免费观看| 久久天天躁狠狠躁夜夜96流白浆| 99久久免费只有精品国产| 波多野结衣久久精品| 亚洲综合精品香蕉久久网97| 大香伊人久久精品一区二区| 久久久久久夜精品精品免费啦| 久久久WWW成人免费毛片| 久久SE精品一区二区| 久久99精品久久久久久野外| 色88久久久久高潮综合影院| 国产精品欧美亚洲韩国日本久久 | 久久久久人妻精品一区二区三区 | 一级做a爰片久久毛片16| 久久久无码精品亚洲日韩蜜臀浪潮| 精品久久一区二区三区| 久久久www免费人成精品| 久久久久亚洲?V成人无码| 99久久久国产精品免费无卡顿| 久久亚洲国产成人影院| 久久av免费天堂小草播放| 国产精品无码久久综合| 狠狠色婷婷久久综合频道日韩 | 久久久久免费精品国产| 亚洲国产精品无码久久| 亚洲国产成人精品女人久久久| 狠狠久久综合伊人不卡| 亚洲综合久久综合激情久久| 国产精品一区二区久久不卡 | 无码任你躁久久久久久老妇| 久久久久亚洲精品天堂久久久久久 | 国产精品久久久99|