Windows 95 System Programming SECRENTS学习笔记(一)[4]

[入库:2005年8月19日] [更新:2007年3月24日]

本文简介:选择自 kendiv 的 blog

windows 95/98/me/nt/2000中,hinstancehmodule实际上是相同的东西,如果一个函数需要一个hmodule作为参数,那么可以传递一个hinstance,反之也成立。之所以存在着两种结构,是因为在windows 3.x中,hmodulehinstance用于标识不同的东西。

module database非常靠近exedll被载入后的内存地址的起始处,并且内含一些像是程序中的code/data sections被装入到内存中何处等等的信息。模块中的代码和资料并不仅只是编译器为你的程序生成的二进制代码,还包括import tableexport tableresource directory….等等。import table(位于.idata section)告诉加载器这个模块需要动态链接哪一个dll中拿一个函数;export table则与之相反,告诉操作系统本模块有哪一个函数要开放给别的模块调用。resource section包含一个类似磁盘目录结构的树形结构,使系统能够快速找到特定的资源。module database内含如何寻找这些sections的信息,以及需要的操作系统的版本,以及该程序是否为console模式….等等。

本文关键:Windows 95 System Programming SECRENTS学习笔记(一)
  相关方案
Google
 

本站最佳浏览方式为 分辨率 1024x768 IE 6.0(或更高版本的 IE浏览器)

go top