人人做人人澡人人爽欧美,国产主播一区二区,久久久精品五月天,羞羞视频在线观看免费

當(dāng)前位置:蘿卜系統(tǒng)下載站 > 技術(shù)開發(fā)教程 > 詳細(xì)頁面

讓自己編寫的DLL加載到Slot1

讓自己編寫的DLL加載到Slot1

更新時(shí)間:2022-07-21 文章作者:未知 信息來源:網(wǎng)絡(luò) 閱讀次數(shù):

  將自己編寫的DLL包含到內(nèi)核當(dāng)中并不是難事,但是這并不意味著你的DLL能夠加載到Slot 1。可能細(xì)心的你已經(jīng)發(fā)現(xiàn),當(dāng)你用應(yīng)用程序加載你自己手工包含到內(nèi)核中的DLL時(shí),這個(gè)DLL一定是加載到調(diào)用進(jìn)程的地址空間中,而不是系統(tǒng)DLL的特有的地址空間Slot1,即使你在project.bib文件中加了文件屬性NK或者S。也許你不會介意,認(rèn)為只要能運(yùn)行就OK。但是如果DLL加載到Slot 1,那么可用的進(jìn)程地址空間就節(jié)省了。這對于本來就擁擠的進(jìn)程地址空間來說是個(gè)好事。我早就注意這個(gè)問題了,可是最近才在MSDN的Knowledge Base中發(fā)現(xiàn)一篇文章,介紹如何將DLL加載到Slot 1。

  只要符合下面兩個(gè)條件,DLL就可以加載到Slot 1:

  1、這個(gè)DLL包含在*.bib文件的MODULES中,且不能具有壓縮屬性。

  2、在內(nèi)核編譯期間,一定要存在一個(gè)和DLL同名的.rel文件,且處于同一個(gè)目錄下。

  對于第一個(gè)條件,很容易實(shí)現(xiàn),在PB中包含的模塊默認(rèn)就是不壓縮的。如果你不會加入DLL到.bib中,可以參考我以前寫的文章。對于第二個(gè)條件,也容易實(shí)現(xiàn),只要在編譯前在鏈接選項(xiàng)中加入一個(gè)選項(xiàng)和修改一個(gè)選項(xiàng)即可。如果是EVC,在“l(fā)ink”-“project options”中找到“/incremental”,改為“/incremental:no”,如果原來是就不用改了。接著添加一個(gè)選項(xiàng)“/savebaserelocations:filename.rel”,其中filename指的是你編譯的DLL的主文件名。比如我要編譯的DLL為abc.dll,那么在此添加“/savebaserelocations:abc.rel”。編譯后就能找到這個(gè)文件。記住一定要把這個(gè)文件和DLL放在同一個(gè)目錄下,這樣PB才能找到這個(gè)DLL對應(yīng)的.rel文件。至于.rel文件的內(nèi)容,用記事本就能查看,也能看的懂。

  到此這篇文章的內(nèi)容就講完了。另外我遇到一個(gè)問題,想麻煩所有正從事CE開發(fā)的網(wǎng)友,問題如下:

  Windows CE允許PB開發(fā)者創(chuàng)建一個(gè)可信任的環(huán)境。其中有一種機(jī)制:在定制的內(nèi)核啟動后,只允許加密過的EXE、DLL運(yùn)行,而非加密的EXE、DLL運(yùn)行會失敗。簡略的說明這種機(jī)制原理,就是利用內(nèi)核在加載EXE、DLL之前,先運(yùn)行驗(yàn)證函數(shù)來驗(yàn)證EXE、DLL是否具有數(shù)字簽名,并且簽名是否合法。如果合法就可以運(yùn)行了,不合法就不加載執(zhí)行。驗(yàn)證函數(shù)能夠訪問一個(gè)全局Public Key,在EXE、DLL中包含Private Key。其中PB工具“signfile.exe”用于將數(shù)字簽名附加到符合PE格式的EXE、DLL上。

  這種機(jī)制正是我需要的,我想它也是很多PB開發(fā)者非常感興趣的。可是我查看了幫助文檔,卡在了最后一個(gè)環(huán)節(jié)“signfile.exe”上。需要了解加密的基本知識,而幫助文檔在加密方面講的不細(xì)致,我又不了解,所以在此請了解這方面的網(wǎng)友指教,大家可以在CE的幫助文檔中搜索標(biāo)題為“signfile.exe”的文章,如果您了解,希望能夠發(fā)郵件賜教,本人不勝感激。

溫馨提示:喜歡本站的話,請收藏一下本站!

本類教程下載

系統(tǒng)下載排行

網(wǎng)站地圖xml | 網(wǎng)站地圖html
主站蜘蛛池模板: 郯城县| 昌宁县| 丰都县| 曲水县| 阿拉尔市| 东源县| 云林县| 庆阳市| 阿坝县| 舒城县| 西盟| 永平县| 招远市| 平谷区| 汉源县| 遂昌县| 仪征市| 布拖县| 茶陵县| 行唐县| 项城市| 当雄县| 英吉沙县| 淮北市| 县级市| 陇南市| 淅川县| 宁陵县| 宜丰县| 东方市| 阳山县| 拜泉县| 烟台市| 遂昌县| 石河子市| 岳阳县| 宁德市| 鹤庆县| 和顺县| 武胜县| 龙江县|