国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > .NET > 正文

解讀.Net虛擬框架的實現原理_.Net教程

2024-07-10 12:51:10
字體:
來源:轉載
供稿:網友

推薦:解讀.Net技術開發中兩個“屬性”引起的歧異
對于property和attribute這兩個名詞都叫

在讓.Net 程序脫離.net framework框架運行(源代碼實現說明) 中我們介紹的脫離框架運行的方法,仍然需要依賴rsdeploy.dll才行。今回我們就介紹這個dll的實現原理。

簡單的實現方式:首先我們需要用到一個undocumented features,在dll被加載時,設置環境變量 COMPLUS_InstallRoot 為當前dll所在目錄。

另外復制c:/windows/microsoft.net/framework/v1.14322或者v2.0.50727到dll所在目錄。把mscoree.dll 以及crt運行庫放到dll目錄中。在dll目錄中創建一個本地的GAC目錄,再把需要的GAC assemblies復制進去。

這樣子就OK了,簡單的.Net程序就可以在這個環境中運行了。如果是復雜的程序還需要實現一個虛擬注冊表系統。對于我們虛擬框架這個應用來說,只需要實現一個只讀的虛擬注冊表就OK了。

這個實現可以ring0 也可以ring3,考慮到兼容性直接用ring3實現好了。

實現方式可以使用api hook的方式,即在我們的dll加載時hook advapi32.dll 中所有Reg開頭的函數。虛擬注冊表系統的框架就完成了,剩下的就是實現了。

這段時間忙著做DNGuard的官方網站http://www.dnguard.net/ ,英文的基本完工了,中文的還沒做,現在還得開發一個網站的客戶中心。等網站的事結了,就發布DNGuard hvm的專業版。在之后看看時間上的安排,有空的話會考慮自己實現一下這個虛擬框架,做一個小工具出來。

這個虛擬框架最核心的就是設置環境變量COMPLUS_InstallRoot 。

虛擬注冊表系統只是一個擴展。我們還可以再擴展一下,增加一個虛擬文件系統。這樣就可以做成像 xenocode vas 那樣了。把整個程序部署成單一文件。

分享:解讀.net垃圾回收和CLR 4.0對垃圾回收所做的改進之一
A survey of garbage collection and the changes CLR 4.0 brings in - series of what is new in CLR 4.0 導言Introduction 垃圾回收(Garbage Collection)在.net中是一個很重要的機制. 本文將要談到CLR4.0對垃圾回收做了哪些改進. 為了更好地理解這些改進,

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 沧州市| 太仆寺旗| 仪征市| 顺义区| 丰县| 霸州市| 朔州市| 双柏县| 海宁市| 洪江市| 新丰县| 乳山市| 盐山县| 光山县| 翁牛特旗| 观塘区| 商城县| 车致| 大同市| 奉节县| 绥中县| 永新县| 永兴县| 曲水县| 正宁县| 黔江区| 镇远县| 榕江县| 定南县| 凭祥市| 济宁市| 汤原县| 怀来县| 百色市| 东丽区| 阿拉善盟| 深州市| 白河县| 那曲县| 尤溪县| 怀仁县|