我想在我的驱动里装载资源?在驱动启动后再把资源释放出来?就向应用程序装载和释放一样!
回复(17) 2007-02-06 18:28 来自版块 - 内核编程
表情
killvxk引用第16楼zzzevazzz于2007-02-11 19:27发表的“”: 晕。静态数组只是自己的,LdrXxx可以访问别的模块啊。 恩~没错~(2007-02-12 00:00)
zzzevazzz晕。静态数组只是自己的,LdrXxx可以访问别的模块啊。(2007-02-11 19:27)
killvxk引用第14楼zzzevazzz于2007-02-10 22:00发表的“”: XP的ntoskrnl导出下面这些函数: LdrAccessResource LdrEnumResources LdrFindResourceDirectory_U LdrFindResource_U ...(2007-02-10 23:08)
zzzevazzzXP的ntoskrnl导出下面这些函数: LdrAccessResource LdrEnumResources LdrFindResourceDirectory_U LdrFindResource_U 手头没2000,不知道2000是不是也导出。 就算没有导出,直接用ntdll...(2007-02-10 22:00)
xikug010 Editor可以直接导出数据为C语言格式的数组(2007-02-09 20:37)
guaiguaiguan居然用strstr去找4d5a90 还能找到第一个,你的运气实在太好了,那么多0字符都没有阻止找到这个MZ。不过如果你把这块内存以16进制dump到一个字符串数组中,肯定还能找到第2个,可惜效率太低。 起始可以使用 mov ax,5a4dh mov di,offset begin...(2007-02-09 19:51)
driver12345谢谢guaiguaiguan老兄的方法! 我现在也用装入资源的方法 但发现我用strstr去找4d5a90 能找到第一个 但找下一个4d5a90就找不到了,不知道为何,文件里明明是有的! 文件结尾我是用.pdb来区分的,可用strstr也找不到! 不行的话只能用数组的方法了!(2007-02-09 10:05)
guaiguaiguan我也是放到数组中,编码的方法可以自己写个小程序,如果懒得写,可以使用ultraedit使用16进制拷贝方式,粘贴到一个新文件中,然后采用列块模式编辑,以插入逗号和引号。最好把这个数组单独放到一个文件中。和其他文件分开。另外最好对文件进行简单编码,否则别人使用ultraedit打开...(2007-02-08 17:30)
killvxk嘿嘿(2007-02-08 13:29)
killvxk引用第5楼linestyle于2007-02-08 09:41发表的“”: 一个500k的文件,放入静态数组,编译的时候估计需要5个小时以上把?? 我以前试过一回,时间太长放弃过啊 我选择把文件放在驱动文件尾部~~就跟最原始的文件合并一样,哈哈~~(2007-02-08 13:28)

返回顶部