重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
句柄就是一种资源的序号,一般是个无符号整数而已,比如文件句柄,就是系统提供一组可以打开文件的数据结构(实际上是结构数组),句柄就是数组下标。
成都创新互联专业为企业提供肃宁网站建设、肃宁做网站、肃宁网站设计、肃宁网站制作等企业网站建设、网页设计与制作、肃宁企业网站模板建站服务,10年肃宁做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。
所谓输出句柄,你可以将句柄当作函数调用的返回值,或者打印出来看也不是不可以。
除了各种API函数之外,句柄(HANDLE)没有使用必要。
当一个函数要求句柄作为参数时,如果不是强调属性的函数,传递一个NULL就行了。
否则以WinMain作为主函数,将主调函数的基础参数hInstance作为句柄传入。
句柄是一个序号, 它不是一个内存地址。
它用于管理Windows内核对象,比如用户打开一个文件,Windows即会建立一个文件内核对象,所谓内核对象就是一块内存结构,里面有文件路径,文件大小,当前文件指针等等信息。Windows系统会打开很多的文件,因此就有很多的文件内核对象,同样Windows系统还会建立其它的类型的很多很多的内核对象。如何管理这么多的内核对象 呢?Windows通过建立一个叫做句柄表的东西,用于记录内核对象的地址。表中每一个元素,都是一个内核对象的起始地址,然后给每一个对象对应一个序号,此序号即为句柄。
//句柄表类似于下面的结构,像0、1、2这样的序号即为句柄
----------------------------------------------------
0 第一个内核对象的地址
1 第二个内核对象的地址
2 第三个内核对象的地址
----------------------------------------------------