实验五:动态链接库的建立与调用
一、实验目的
(1)理解动态链接库的实现原理。
(2)掌握Windows系统动态链接库的建立方法。
(3)掌握Windows环境下动态链接库的静态和动态调用方法。
二、实验准备
(1).建立动态链接库工程:
Microsoft Visual C++ 6.0环境下选择File->New命令,然后再Project选项卡中选择Win32 Dynamic-Link Library建立一动态链接库工程文件,输入工程文件名,选择工程文件名所在路径,选择完毕单击确定按钮。
(2).动态链接库的相关知识:
1.动态链接库(Dynamic Link Library DLL)是一个可执行模块,它包含的函数可以由Windows应用程序调用以提供所需功能,为应用程序提供服务。
2.原理:Windows系统提供了非常有效的编译和运行环境,可以将独立的模块编译成较小的动态链接库文件,并可对这些动态链接库单独进行编译和测试。运行时,只有在主程序需要时才将动态链接库装入内存并运行。这样不仅减少了应用程序的大小及对内存的大量需求,而且使得动态链接库可以被多个应用程序使用,从而充分利用了资源。
3.动态链接库入口函数:DllMain()函数是动态链接库的入口函数,当Windows系统加载动态链接库时调用该函数,DllMain()函数不仅在将动态链接库加载到进程地址空间时被调用,在动态链接库云进程分离是也被调用。
BOOL APIENTRY DllMain
(HANDLE hModule, 动态链接库的句柄
DWORD ul_reason_for_call, 系统调用该函数的原因
LPVOID lpReserved ) 说明动态链接库是否需要动态加载或卸载
{
return TRUE