Windows链接时期所需要的函数库

Windows支持动态链接。换句话说,应用程序所调用的Windows API函数是在“执行时期”才链接上的。并不是拓展名为.dll才是动态链接库。.exe,.dll,.fon,.mod,.drv,.ocx都是所谓的动态链接函数库。

Windows程序调用的函数可分为C Runtimes以及Windows API两大部分。早期的C Runtimes并不支持动态链接库,但Visual C++4.0之后已支持,并且在32位操作系统中已不再有small/large等内存模式之分。

另一组函数,Windows API,由操作系统本身(主要是Windows三大模块GDI32.DLL和USER32.DLL和KERNEL32.DLL)提供。虽说动态链接是在执行时期才发生“链接”事实,但在链接时期,链接器仍需先为调用者(应用程序本身)准备一些适当的信息,才能够在执行时期顺利“跳”到DLL中执行。如果该API所属的函数库尚未加载,系统也才因此知道要先行加载该函数库。这些适当的信息放在所谓的“import函数库”中。32位Windows的三大模块所对应的import函数库分别为GDI32.LIB和USER32.LIB和KERNEL32.LIB。

Windows发展至今,逐渐加上的一些新的API函数并不放在GDI和USER和KERNEL三大模块中,而是放在诸如COMMDLG.DLL、TOOLHELP.DLL之中。如果要使用这些APIs,链接时还得加上这些DLLs所对应的import函数库,诸如COMDLG32.LIB和TH32.LIB。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值