• <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>

            道。道。道

            安全特性不等于安全的特性

               :: 首頁 :: 聯系 :: 聚合  :: 管理

            常用鏈接

            搜索

            •  

            最新評論

            如前所述, Windows95 不是一個“純” 32 位操作系統,其內核模塊中的 USER GDI 均是用 16 位代碼實現的。 USER32.DLL GDI32.DLL 只是 16 位的 USER.EXE GDI.EXE 32 位調用接口。因此,如果屏幕截獲程序用 32 位代碼實現,則只能截獲 32 位應用程序對 USER32.DLL GDI32.DLL 的調用,無法截獲 16 位應用程序對 USER.EXE GDI.EXE 的調用,所以如果想截獲所有應用程序(包括 Windows95 的桌面程序 Explorer )中有關屏幕輸出的系統調用,則應該用 16 位代碼實現屏幕截獲功能。這就是 LTW32 為什么不是“純” 32 位應用程序的原因。 LTW32 主要截獲兩個系統調用 TextOut() ExtTextOut() ,方法很簡單,把這兩個函數的頭五個字節修改為一個 JMP FAR 指令,使得對這兩個函數的調用均轉向屏幕截獲程序。這就涉及到一個關鍵問題:動態修改 Windows 的代碼。

            在傳統的 DOS 程序中,動態修改程序代碼無任何困難,但在 Windows 中則不然,因為在 Windows 中,代碼可被同一程序的多個實例(進程)共享,所以系統不允許應用程序動態的修改代碼。在 16 位側,內存的可讀、寫屬性是與段選擇符聯系在一起的。段選擇符基本上可分為兩類:數據段選擇符和代碼段選擇符。前者可讀、可寫、不可執行;后者可讀、可執行、不可寫。 Windows 提供了這兩類段選擇符相轉換的系統調用。未公開的 16 位系統調用 AllocCStoDSAlias() 為給定的代碼段選擇符分配一個具有相同線性基址和尺寸的數據段別名( DS Alias )。通過 DS 別名可以對給定的代碼段進行修改。 AllocCStoDSAlias() 的使用方法如下:

            WORD (FAR PASCAL *AllocCStoDSAlias)(WORD);

            AllocCStoDSAlias = GetProcAddress(

            GetModuleHandle(“KERNEL”), ”ALLOCCSTODSALIAS”);

            調用參數為給定的代碼選擇符,調用成功時返回一個線性基址和尺寸均與原代碼選擇符相同的 DS 別名。當不再使用此 DS 別名時,要用系統調用 FreeSelector() DS 別名釋放掉。

            使用上述技術,就可實現動態修改 Windows 代碼,從而改變 GDI 的系統調用 TextOut() ExtTextOut() 的執行動作,實時地截獲屏幕輸出,為實現鼠標隨動翻譯提供可能。

            把上述的 32 位到 16 位的形式替換、 32 位代碼與 16 位代碼的數據交換、動態修改 Windows 內核等技術綜合應用在一起,配合單詞查找算法和詞組分析算法就可以實現鼠標隨動翻譯功能。

            posted on 2006-11-18 16:48 獨孤九劍 閱讀(607) 評論(0)  編輯 收藏 引用 所屬分類: Win32
            久久综合狠狠综合久久| 午夜天堂av天堂久久久| 久久久黄片| 亚洲精品无码久久不卡| 中文字幕无码精品亚洲资源网久久 | 一本久道久久综合狠狠躁AV| 久久人人爽人人爽人人片AV不| 精品综合久久久久久97超人 | 三级韩国一区久久二区综合| 久久婷婷激情综合色综合俺也去| 97久久精品人人澡人人爽| 亚洲中文久久精品无码ww16| 2020久久精品国产免费| 久久99久国产麻精品66| 91精品婷婷国产综合久久| 中文字幕乱码人妻无码久久| 久久99亚洲综合精品首页| 蜜桃麻豆www久久| 国产精品美女久久久久网| 久久精品国产精品亚洲精品| 久久99国产一区二区三区| 狠狠色丁香久久综合五月| 一本色综合网久久| 久久久国产视频| 久久久久亚洲av综合波多野结衣| 久久精品国产亚洲麻豆| 国产精品一久久香蕉国产线看观看| 久久精品aⅴ无码中文字字幕不卡| 久久中文骚妇内射| 伊人久久综合精品无码AV专区 | 亚洲国产精品久久66| 国产精品久久午夜夜伦鲁鲁| 精产国品久久一二三产区区别| 精品久久久无码中文字幕| 国产精品免费久久久久久久久| 国产成人久久777777| 久久综合欧美成人| 久久国产视屏| 一个色综合久久| 亚洲综合熟女久久久30p| 久久天天躁狠狠躁夜夜96流白浆 |