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


                啥也不說,上圖:






                數據通過Hook方式從Lingoes的結果中提取再放入本地數據文件中,然后再查詢出來。兩張圖分別顯示了樹狀方式結果顯示和HTML方式結果顯示。有點樣子了吧~
                目前的主要問題集中在Lingoes結果的處理上,通過HTML數據分析數據是下一步的首要目標,打算先考察先wxWidgets帶的XML解析對象,如果不行再試試tinyxml,再不行就不知道了,Lingoes的HTML結果應該是直接字符串拼接的,不是有一定規則,這對分析來說比較麻煩。
                存在的問題:
                                 1.HTML顯示有些走樣;這個應該是wxHtmlWindow對DIV標簽支持的問題,這個控件不知道是如何實現的,直接嵌入的IE還是其他方式?反正顯示沒有直接用IE顯示好看;還有就是不支持內容中'file:///'定位的圖像,這個很惱火,每次顯示前,要先剔除HTML數據中的'file:///'字串;先看看了,不是主要功能,如果必要,可以直接使用IE內嵌方式,而不用wxHtmlWindow;
                                 2.字典只能支持一種:Vicon(維科)字典,就是Lingoes缺省帶的,現在測試時,就開這一個字典;
                                 3.Lingoes界面語言的問題也是比較煩的地方,不僅僅對Hook過程有影響,而且結果的字典解析上也有影響,這也是急需通過HTML方式,而不是TEXT方式分析數據的主要原因;
                                 4.等等,等等,很多地方~

                這里是LingosHook程序,源碼也在里面,有興趣下載試試。(不能運行,請嘗試先安裝MS的VC9的實時庫-‘)開發中,任何問題請評論~
                由于Lingoes的界面語言對LingosHook運行影響較大,提供了一個配置的地方,如下圖,注意的是,每次都需要設置下,因此配置沒有被記錄還。。。

            posted on 2009-11-23 17:36 codejie 閱讀(1066) 評論(14)  編輯 收藏 引用 所屬分類: C++

            評論

            # re: LingosHook:Lingoes生詞本第一版 2009-11-23 19:33 missdeer

            不是直接嵌入IE,wx自己寫的一個,就好比QT的WebKit一樣,不然就不能跨平臺了。
            http://www.kirix.com/labs/wxwebconnect.html 這里有個Gecko內核的wx控件。  回復  更多評論   

            # re: LingosHook:Lingoes生詞本第一版 2009-11-23 19:36 missdeer

            wxCode中還有個iehtmlwin的控件,是嵌入ie的。  回復  更多評論   

            # re: LingosHook:Lingoes生詞本第一版[未登錄] 2009-11-23 23:49 codejie

            @missdeer
            收到,回頭就去看~wxWidgets用的不多,很多都不知道啊~  回復  更多評論   

            # re: LingosHook:Lingoes生詞本第一版[未登錄] 2009-11-24 10:10 Liu

            沒其他地方和你聯系

            請教一個技術問題
            有一個指定的整數數組
            每個整數(4byte 長)前5bit是特殊位,后面的bit才是數據
            要寫一個程序
            把前5bit去掉
            然后數據往前挪(不留下那5bit的空位)
            形成一個char * 的東西出來
            要你會怎么實現?

            實現起來要顧及空間和效率……

              回復  更多評論   

            # re: LingosHook:Lingoes生詞本第一版 2009-11-24 11:25 codejie

            @Liu
            如需要,發gmail或者直接電我,都沒有變~
            問題先看看,你知道我寫算法最差了~  回復  更多評論   

            # re: LingosHook:Lingoes生詞本第一版 2009-11-24 11:54 codejie

            @Liu
            int ai[N];
            for(int i = 0; i < N; ++i)
            {
            ai[i] = ai[i] << 5;
            }

            char* pc = ai;
            for(int i = 3; i < N; ++ i, ++pc)
            {
            *pc = (*pc && 0xE0) || (*(pc + 1) && 0x1F);
            }

            這應該是個笨方法,還不知道對錯,怎么想就怎么寫了,感覺應該可以在一個循環中搞定,讓我在想想啊,你先試試上面的法子對不對~  回復  更多評論   

            # re: LingosHook:Lingoes生詞本第一版 2009-11-24 12:34 codejie

            @Liu
            不用看上面的了,豬一樣的想法,大腦完全被要吃大排的思想占領了~容我再想想~  回復  更多評論   

            # re: LingosHook:Lingoes生詞本第一版 2009-11-24 13:21 codejie

            @Liu
            int ai[N];
            for(int i = 0; i < N; ++i)
            {
            ai[i] = ai[i] << 5;
            }

            int* pi = NULL;
            char* pc = NULL;
            int cnt = 0;

            for(int i = N - 1; i >= 0; -- i)
            {
            pi = ai[i];
            pc = (char*)pi - 1;
            cnt = N - 1 - i;
            cnt = cnt * 4 - (5 * cnt / 8);
            for(int j = 0; j < cnt; ++ j, ++ pc)
            {
            *pc = (*pc && 0xE0) || (*(pc + 1) && 0x1F);
            }
            }

            上面的方法省空間,但效率肯定不行,對錯也不知道,只是我能力就這些了~你看著辦吧~~  回復  更多評論   

            # re: LingosHook:Lingoes生詞本第一版[未登錄] 2009-11-25 01:59 Liu

            老實說把,這題是我最近在面試的時候碰到的。

            我第一個解法就是和你一樣的想法有點類似,先逐個拷貝過來,再想辦法把中間的5bit空位刪除掉。結果對面那個印度阿三說我的空間利用率和效率不高,要我重寫……

            我還在那里想的時候,丫就不耐煩了說算了算了下一題

            所以這東西讓我有點小小的郁悶,因為才給了我20分鐘不到寫代碼。5bit的位操作讓人很難受阿,中間想解法也沒給人足夠的時間

              回復  更多評論   

            # re: LingosHook:Lingoes生詞本第一版 2009-11-25 09:35 codejie

            @Liu
            表郁悶了,要這樣想,做不出來說明你已經上升到一個新的階段了,不再是coder了,是Leader了~好事啊~  回復  更多評論   

            # re: LingosHook:Lingoes生詞本第一版 2009-11-26 09:28 wu

            根據(32-20)*2%8==0每2個整數轉換成3個字符,零頭另算
            union Helper {int val[2];
            struct {char nul1:5; char ch1:8; char ch2:8 ... };};
            // 可能存在對齊及大頭小頭問題……
              回復  更多評論   

            # re: LingosHook:Lingoes生詞本第一版 2009-11-26 12:50 codejie

            @wu
            我是永遠想不起用union類型的。。。  回復  更多評論   

            # re: LingosHook:Lingoes生詞本第一版 2009-12-24 17:45 lawrence

            有沒有想過HOOK界面的句柄呢?而不需要用HOOK DLL的做法?  回復  更多評論   

            # re: LingosHook:Lingoes生詞本第一版 2009-12-25 09:44 codejie

            @lawrence
            什么叫做HOOK界面?我也沒有HOOK任何Lingoes的DLL的。  回復  更多評論   

            公告

            Using C++

            導航

            統計

            留言簿(73)

            隨筆分類(513)

            積分與排名

            最新評論

            閱讀排行榜

            評論排行榜

            久久精品国产亚洲av水果派 | 国产情侣久久久久aⅴ免费| 午夜精品久久久久| 久久精品国产第一区二区三区| 欧美一区二区三区久久综| 国产精品免费久久| 久久综合亚洲欧美成人| 99国产精品久久| 久久人妻少妇嫩草AV无码专区 | 久久伊人精品一区二区三区| 91视频国产91久久久| 91秦先生久久久久久久| 久久99热只有频精品8| 国产精品美女久久久久av爽| 一本一本久久a久久综合精品蜜桃| 久久午夜综合久久| 久久精品国产99国产精品澳门| 久久天天躁夜夜躁狠狠| 久久青青国产| 国产精品久久国产精品99盘 | 久久精品国产72国产精福利| 久久电影网一区| 一本色道久久综合狠狠躁篇| 久久综合亚洲色HEZYO国产| 亚洲国产精品无码久久一区二区| 久久夜色精品国产亚洲| 国产精品免费看久久久香蕉| 韩国免费A级毛片久久| 久久久久精品国产亚洲AV无码| 久久精品国产99久久久香蕉| 久久精品成人免费网站| AV无码久久久久不卡网站下载| 久久成人国产精品免费软件| 日韩精品久久久久久久电影| 久久精品三级视频| 成人a毛片久久免费播放| 欧美午夜精品久久久久免费视| 久久久久亚洲AV无码专区体验| 亚洲中文久久精品无码ww16| 中文字幕乱码人妻无码久久| 久久精品极品盛宴观看|