什么是句柄?
最近在学编程时有几个概念不清楚,向大家讨教一下:
什么是句柄,WIN32 API 又是什么东东?
问题点数:50、回复次数:13Top
1 楼asj(破喉咙)回复于 2000-01-27 00:11:00 得分 0
句柄是一个整数,用来标示一个组件,就好像门牌号一样。API就是应用程序接口,概念上类似于DOS的中断,是操作系统给编程者提供的服务,你可以把它当作一个函数包来对待。Top
2 楼kxy(手举穿肠毒药,怀抱刮骨钢刀)回复于 2000-01-27 00:26:00 得分 0
win32 API
win32 window 32位平台.
API = Application Program Interface 应用程序编程接口.
句柄是一个(通常是32位)数,它代表一个对象,windows中句柄类似传统C
或者MS-DOS中的文件句柄.Top
3 楼tonyhan()回复于 2000-01-27 09:06:00 得分 0
却如上两位所言,其实都是些概念性的东东,用用就习惯了。Top
4 楼929()回复于 2000-01-27 09:16:00 得分 50
句柄在WIN32下就是一个32位整数。它是WINDOWS用来记录,控制所分配资源的一个控制点。它的英文HANDLE(把手,把柄),可能更能使人明白。比如生成一个窗口,会返回一个窗口句柄。从资源中读入一幅位图,会返回一落千丈个位图句柄。获得了句柄,我们可以用它做许多事。比如用GETOBJECT可以返回WINDOWS中所有有关图形GDI资源的信息。在GETOBJECT中传入位图句柄及位图结构变量,可返加位图的有关信息。有窗口句柄,就可以控制这个窗口的类型,大小等多个方面。API就是应用程序编程接口。可以理解为就是系统为我们提供的函数。只要WINDOWS存在,我们就可以对它提供的函数进行调用。Top
5 楼aborigine()回复于 2000-01-27 09:50:00 得分 0
句柄是WINDOWS内部所维护的核心对象,是一个32位长整数。你不需要知道这个32位值的具体含义,只要分配、使用和销毁就可以了。
API是Application Programming Interface的简写。
它是一组由程序开发商所提供的应用程序编程接口。Top
6 楼xubin_sh(NBX)回复于 2000-01-27 10:13:00 得分 0
句柄是32整型,其实是一个指针,它指向Windows的一个结构,此结构由Windows内部维护,由于版本的不同,结构有可能会发生变化,而你的程序中用的是句柄,所以不会影响到你的程序,所以,在3.1下写的源程序有些可以不加修改的在95下编译,这些句柄有些在DDK中公布。Top
7 楼upstream(upstream)回复于 2000-01-27 10:17:00 得分 0
句柄是对象指针,API是操作系统提供给开发者的函数。Top
8 楼yehao()回复于 2000-01-27 23:44:00 得分 0
非常感谢大家,这里的哥们真够朋友。
现在对这些概念有了一些了解了。Top
9 楼kxy(手举穿肠毒药,怀抱刮骨钢刀)回复于 2000-01-28 13:51:00 得分 0
那就分分吧 :)Top
10 楼blaise()回复于 2000-01-28 23:45:00 得分 0
here is explaination from microsoft:
when you went to cinema,you bring a umbrella,and you want to have the peopel in cinema to keep the umbrella for you,thn you give them the umbrella,they give you a ticket to prove that they keep theumbrella for you.
Ok,the ticket is handle.Handle is meaningless itself,but you can use that.In brief,MS said about handle:"use it,don't ask what it is!"Top
11 楼syp()回复于 2000-01-29 02:06:00 得分 0
句柄其实是一个指向数据的指针,在Win95中句柄是一个32位值,可以通过异或运算将句柄转换为一个指向实际数据地址的指针
可参考<<Windows 95奥秘>> 电子工业出版社Top
12 楼Bobby(顶)回复于 2000-01-29 13:16:00 得分 0
Hi 你好:
忍不住说一声,如果您认为问题已经解决了,就应该给别人满分才对,不然老说你这是待解决的问题。 :)
bobby
>>>>>实话实说。Top
13 楼yehao()回复于 2000-01-29 20:46:00 得分 0
是已经给了分数呀?!Top




