• <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生詞本第八版


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

                這幾天的主要工作都在修修補(bǔ)補(bǔ)HTML數(shù)據(jù)的直接存取上,消耗了大量時(shí)間;而語(yǔ)音和菜單部分加起來(lái)不到兩小時(shí),比想象的簡(jiǎn)單需多。不多扯了,上圖解說(shuō)~

                先看看新增的配置:


                藍(lán)色框內(nèi)的兩項(xiàng)為新增項(xiàng),是用于對(duì)直接HTML數(shù)據(jù)存取做配置的,兩個(gè)配置項(xiàng)是互斥的;
                1. 第一項(xiàng)(Ignore Dictionary Analysis Error)指定當(dāng)HTML數(shù)據(jù)到達(dá)時(shí),先嘗試使用詞典解析,如果解析失敗,比如沒(méi)有能支持的詞典數(shù)據(jù),則將HTML數(shù)據(jù)直接保存下來(lái);
                2. 第二項(xiàng)(Close Dictionary Analysis Process)指定當(dāng)HTML數(shù)據(jù)到達(dá)是,不進(jìn)行詞典解析過(guò)程,直接將HTML數(shù)據(jù)保存下來(lái);

                選中任何一項(xiàng),都會(huì)自動(dòng)選中'HTML Data Process' 中的兩個(gè)配置項(xiàng)(Storage,Loading),理由很簡(jiǎn)單,如果不選中這兩個(gè),HTML數(shù)據(jù)是沒(méi)法顯示的。。。兩個(gè)配置項(xiàng)的區(qū)別在于是否調(diào)用詞典解析過(guò)程,對(duì)于完全不使用Vicon或Langdao的人來(lái)說(shuō),不調(diào)用詞典解析,可以稍微稍微提高點(diǎn)性能。。。兩個(gè)配置項(xiàng)默認(rèn)是關(guān)閉的,因?yàn)椴唤?jīng)過(guò)解析的數(shù)據(jù),只能在HTML界面中查看,且可能會(huì)有大量無(wú)用數(shù)據(jù),體驗(yàn)不好,如下圖所示。

                 直接HTML數(shù)據(jù)存取很好,很強(qiáng)大!由于抓取跟解析無(wú)關(guān),跟直接截屏差不多,因此強(qiáng)大到對(duì)付中文或者其它語(yǔ)言文字一樣有效,這個(gè)是我開(kāi)始沒(méi)有想到的。。。

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


               如上圖,看見(jiàn)么,支持Speak了!雖然很簡(jiǎn)單,但至少能發(fā)音了,我喜歡。。。(打算給自己做個(gè)版本,支持Hotkey發(fā)音,或者自動(dòng)發(fā)音,嘿嘿。。。)


              前面說(shuō)到的bug會(huì)在配置了直接HTML數(shù)據(jù)讀取情況下,使用Hotkey時(shí)出現(xiàn),如下圖:


                輸入的是‘bugxxx’,查詢(xún)到的是‘bugs’,期望抓取的生詞應(yīng)該也是‘bugs’,但由于沒(méi)法訪問(wèn)到Lingoes的單詞列表數(shù)據(jù),只能將就先取輸入框的錯(cuò)誤數(shù)據(jù)了。這個(gè)問(wèn)題以后看吧,我現(xiàn)在完全沒(méi)頭緒如何修正。

                關(guān)于窗口句柄的模糊查詢(xún),看看下面代碼就明白了~
                原來(lái)的代碼:
            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);
                            }

                增加了循環(huán)查詢(xún),性能會(huì)。。。唉,我也不想,但真的不知道為什么這個(gè)句柄的值會(huì)變化。。。



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

                實(shí)際這篇隨筆早寫(xiě)好了,但每次要提交時(shí),總是出現(xiàn)一個(gè)不得不改的bug,比如列表bug,比如句柄變化等等,到今天,實(shí)在沒(méi)耐心了,傳上再說(shuō)吧。。。


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

                LingosHook將Open Source了。。。但無(wú)聊的xxx限制了code.google.com的訪問(wèn),害的我不得不翻墻走,這也導(dǎo)致open的進(jìn)展很慢。。。我實(shí)在想不明白,封了VOA就算了,code.google.com又咋了?閉關(guān)鎖國(guó)會(huì)導(dǎo)致閉門(mén)造車(chē),而閉門(mén)造車(chē)會(huì)導(dǎo)致科技落后,而科技落后會(huì)被挨打的,歷史已經(jīng)多次驗(yàn)證了這條理論,為什么xxx現(xiàn)在還做這樣的事情。。。

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

            評(píng)論

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

            弄了一個(gè)小時(shí),終于可以用了,贊一個(gè),還開(kāi)源了
            讓我弄簡(jiǎn)明的安裝吧  回復(fù)  更多評(píng)論   

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

            @chassic
            能用了就好。。。
            程序是用VC20008Express開(kāi)發(fā)的,需要其運(yùn)行庫(kù),擔(dān)心未安裝此運(yùn)行庫(kù)的系統(tǒng)無(wú)法運(yùn)行,所以才使用VS自帶的安裝工程。如果你能幫忙做個(gè)安裝,甚至來(lái)個(gè)‘綠色版’,那真是要辛苦你了,謝謝~  回復(fù)  更多評(píng)論   

            公告

            Using C++

            導(dǎo)航

            統(tǒng)計(jì)

            留言簿(73)

            隨筆分類(lèi)(513)

            積分與排名

            最新評(píng)論

            閱讀排行榜

            評(píng)論排行榜

            色偷偷888欧美精品久久久| 欧美亚洲国产精品久久| 一级做a爰片久久毛片人呢| 久久久噜噜噜久久| 性高湖久久久久久久久| 国产精品视频久久久| 一本大道久久东京热无码AV| 久久久亚洲欧洲日产国码aⅴ| 久久国产美女免费观看精品| 少妇久久久久久被弄高潮| 2020最新久久久视精品爱| 丁香色欲久久久久久综合网| 国产精品女同一区二区久久| 久久精品亚洲精品国产色婷 | 欧美日韩中文字幕久久伊人| 久久大香萑太香蕉av| 国产精品女同一区二区久久| 69久久夜色精品国产69| 久久精品极品盛宴观看| 久久99热这里只频精品6| 久久精品男人影院| 久久久久亚洲av无码专区喷水 | 99蜜桃臀久久久欧美精品网站| 99久久综合国产精品二区| 久久综合狠狠综合久久综合88| 亚洲欧美国产日韩综合久久 | 久久精品女人天堂AV麻| 日韩亚洲欧美久久久www综合网 | 波多野结衣AV无码久久一区| 久久亚洲天堂| 四虎国产精品成人免费久久| 思思久久99热只有频精品66| 亚洲午夜无码久久久久小说| 色天使久久综合网天天| 一本色综合久久| 一本久道久久综合狠狠躁AV| 香港aa三级久久三级老师2021国产三级精品三级在 | 久久久这里有精品| 性做久久久久久久久久久| 伊人久久五月天| 日韩人妻无码精品久久免费一 |