2006年12月30日星期六

纯资源DLL的编写

纯资源的DLL就是只包含资源的DLL,例如:图标,位图,字符串,声音,视频,对话框等。使用纯资源DLL可以节约可执行文件的大小,可以被所有的应用程序所共享,从而提高系统性能。纯资源DLL的编写比普通的DLL要简单的多:
1) 创建一个WIN32 DLL工程,不是MFC的DLL
2) 创建一个资源文件 *.RC,添加到资源DLL的工程中去
3) 添加一个初始化DLL的原文件:

#include "windows.h"
extern "C" BOOL WINAPI DllMain(HINSTANCE hInstance, DWORD dwReason, LPVOID)
{
return 1;
}

这是纯资源DLL所必须需的代码,保存这个文件为*.CPP。编译这个资源DLL。

在应用程序显示的调用这个DLL,使用LoadLibrary函数装入资源DLL,FindResource和LoadResource来装入各种资源,或者使用下列的特定的资源装入函数:
FormatMessage
LoadAccelerators
LoadBitmap
LoadCursor
LoadIcon
LoadMenu
LoadString
当资源使用结束,应用程序须调用FreeLibrary函数来释放资源。

调用编写好的资源DLL的步骤如下:
首先在应用程序中声明一个DLL的句柄,HINSTANCE m_hLibrary;在OnCreate( )
函数中调用LoadLirbrary( ),在OnDestory( )中调用FreeLibrary()。

1 条评论:

天行健,君子当自强不息 说...

不错,很有技术含量,继续努力.