在Windows操作系统中,包含着许多动态链接库。作为整个系统的基础,它们在整个系统中发挥着各自的作用。在众多的动态库文件中,有三个最重要,分别是:Kernel32.dll,它包含用于管理内存、进城和线程的各个函数;User32.dll,它包含用于执行用户界面任务的各个函数;GDI32.dll,它包含用于图画和显示文本的各个函数。
为什么在操作系统中有如此多的动态库文件,且担负着艰巨的任务。其实,不仅是在操作系统中,很多的应用程序也包含着很多的动态库文件,只不过这些dll文件是建立在操作系统基础上的。不言而喻,在整个程序中使用动态库在一定程度上会带来很多好处。
首先,动态库文件扩展了应用程的特性。从文字上我们可以看出,“动态”即动态的载入到进城地址空间,因此应用程序能够在运行时确定需要执行什么操作,然后装入相应的代码。这样我们可以借助于dll来改进或增强程序的功能。
其次,动态库文件可以由开发多种语言来编写,并且有利于重用。比如:曾经用C++,或者Basic,或者COBOL或者FORTRAN开发的dll文件,我们现在就可以直接的在.NET中应用。在理论上我们可以只花费一次的开发时间,而多次重复的使用,且可以应用在多个项目中,只要能满足我们的需要。节省了开发时间,加快了进度。
第三,动态库文件有助于解决平台的差异。如果你经常使用MSDN查找API函数就会发现,不同的操作系统对API函数支持的也不同。有些在Windows9x下存在的API函数在Windows2000或WindowsXP系统中都已经废除。这样当更换操作系统平台时,我们还需要不停的更改API函数。但是,如果我们把某些功能用dll文件的形式来提供,那么更换不同版本的操作系统,我们都不用更改那些已经被抛弃或者已经改变过的函数,Windows系统会很好的处理这样的问题。
在Windows操作系统中,包含着许多动态链接库。作为整个系统的基础,它们在整个系统中发挥着各自的作用。在众多的动态库文件中,有三个最重要,分别是:Kernel32.dll,它包含用于管理内存、进城和线程的各个函数;User32.dll,它包含用于执行用户界面任务的各个函数;GDI32.dll,它包含用于图画和显示文本的各个函数。
为什么在操作系统中有如此多的动态库文件,且担负着艰巨的任务。其实,不仅是在操作系统中,很多的应用程序也包含着很多的动态库文件,只不过这些dll文件是建立在操作系统基础上的。不言而喻,在整个程序中使用动态库在一定程度上会带来很多好处。
首先,动态库文件扩展了应用程的特性。从文字上我们可以看出,“动态”即动态的载入到进城地址空间,因此应用程序能够在运行时确定需要执行什么操作,然后装入相应的代码。这样我们可以借助于dll来改进或增强程序的功能。
其次,动态库文件可以由开发多种语言来编写,并且有利于重用。比如:曾经用C++,或者Basic,或者COBOL或者FORTRAN开发的dll文件,我们现在就可以直接的在.NET中应用。在理论上我们可以只花费一次的开发时间,而多次重复的使用,且可以应用在多个项目中,只要能满足我们的需要。节省了开发时间,加快了进度。
第三,动态库文件有助于解决平台的差异。如果你经常使用MSDN查找API函数就会发现,不同的操作系统对API函数支持的也不同。有些在Windows9x下存在的API函数在Windows2000或WindowsXP系统中都已经废除。这样当更换操作系统平台时,我们还需要不停的更改API函数。但是,如果我们把某些功能用dll文件的形式来提供,那么更换不同版本的操作系统,我们都不用更改那些已经被抛弃或者已经改变过的函数,Windows系统会很好的处理这样的问题。