• <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>
            隨筆 - 64, 文章 - 11, 評論 - 12, 引用 - 0
            數據加載中……

            拆解一個RPC工具包

            由于我們現在所搭建的系統是基于分布式的系統,出于性能考慮決定基于RPC技術進行系統間的互操作與互通信。團隊內在使用一個已被封裝的RPC工具包,為什么稱它為工具包呢?因為它要生成兩個頭文件和兩個庫文件,其實它還會生成一些監時文件,只不過在它在生成靜態庫時就會把這些臨時文件刪除。這里逐個介紹它的戰果,頭文件就是接口方法的聲明和編譯控制選項,這里要談的是它的靜態庫文件,它是由idl生成的代理文件和存根文件并由再加入內存的分配和釋放的兩個函數及必要的入口函數來生成。為什么這樣說?首先可以通過編譯時出現的提示串。其次反匯編該文件。

            于我嘗試用該框架做一個helloworld,其間我經歷了幾次沮喪或者近乎冒火。靜下心來,仔細分析。首先查看服務端已開啟了偵聽,發現客戶端也已經發送,服務端也已到達,但就是沒有達到服務函數。最后問題定位在權限問,其實這個問題在我前面的博文中也已經詳談了。解決辦法:去除服務端對RPC的限制,其次反匯編該工具后發現了是服務端注冊接口函數,解決辦法在前面的博文中也已詳述,靜態hook也成,動態hook的方法也成。當前就用了第一種方法,最好的辦法還是不用它,而重新寫一個了。

            這個工具雖然讓我花了近一天來反匯編它,最后卻發現都是封裝的。但是其中的封裝的思想卻是值得借鑒的。這樣減輕一般用戶的使用難度,而且也搞得玄了些。哈哈,就怕我不暈。

            posted on 2011-03-04 13:41 Robertxiao 閱讀(864) 評論(0)  編輯 收藏 引用 所屬分類: RPC/COM/ATL散談

            色悠久久久久久久综合网| 2021少妇久久久久久久久久| 国内精品久久久久久久亚洲| 欧美激情精品久久久久久久九九九 | 狠狠色丁香久久综合婷婷| 久久综合狠狠综合久久激情 | 久久久久国产亚洲AV麻豆| 亚洲精品美女久久777777| 久久久久久亚洲精品不卡 | 91精品国产91久久久久福利| 国内精品久久久久国产盗摄| 久久久久久伊人高潮影院| 久久91综合国产91久久精品| 18禁黄久久久AAA片| 亚洲国产精品久久久久婷婷软件| 性做久久久久久久久| 久久国产色AV免费看| 色欲综合久久躁天天躁| 国产成人99久久亚洲综合精品| 久久婷婷人人澡人人爽人人爱| 久久久91精品国产一区二区三区| 久久久久亚洲AV无码专区首JN | 亚洲国产成人精品91久久久 | 久久久精品波多野结衣| 亚洲精品午夜国产VA久久成人| 狠狠色综合久久久久尤物| 国产精品美女久久久久| 精品多毛少妇人妻AV免费久久| 色婷婷久久久SWAG精品| 国产精品伦理久久久久久| 久久精品成人免费网站| 久久99国产精品久久99| 国产精品久久久久jk制服| 久久久久久久97| 人妻精品久久无码专区精东影业| 伊人久久国产免费观看视频| 久久久久一级精品亚洲国产成人综合AV区 | 久久久久人妻精品一区二区三区| 国内精品人妻无码久久久影院导航| 久久天天躁狠狠躁夜夜av浪潮 | 无码人妻久久一区二区三区免费 |