程序开发中经常会用到一些图标、图片、光标、声音等,我们称它们为资源(Resource)。当多个窗口用到同样的资源时,可以将这些公共的资源放到一个dll文件里调用,这样,由于定位资源比在磁盘中定位文件花费时间少,所以应用程序执行会更快。多种资源放在一个文件中,减少了图标、图片、光标、声音等文件数量,从而可以减小应用程序的大小。不用怕用户在使用过程中的不小心而损坏了资源文件致使程序无法正常运行。当然也可以不编为dll,而和应用程序放一起,用到时再LoadFromFile,但这样容易丢失,一旦丢失了将影响程序的运行。
下面介绍如何将资源装入dll文件并在应用程序中调用。
一、创建资源文件
首先将要用到的资源放在同一个文件夹下,新建一记事本,将后缀名改为.rc(此处暂以rc.rc的文件名为例)。注意事项:创建的资源文件名不要和工程名相同,因为bcb创建工程时会自动创建一个和工程名相同的资源文件,并且最好将资源文件保存到和工程文件同一个文件夹中。打开创建的rc.rc文件并按照如下格式写入资源信息:
资源标识符 关键字 资源文件名
格式说明:
① 资源标识符:程序中调用资源时的特定标号,由自己定义。
② 关键字:标识资源文件类型;例如:
Wave : 资源文件是声音文件;
RCDATA: JPEG文件;
AVI : AVI动画;
ICON : 图标文件;
BITMAP: 位图文件;
CURSOR: 光标文件;
RMI : RMI音乐文件;
MIDI : MIDI音乐文件
EXEFILE:可执行文件
JPEG: jpg图片
EXEFILE: exe可执行文件
③ 资源文件名:加入的资源文件名(要带扩展名,可以带路径名构成全文件名);
④ 举例:假如有三个图形:“open.bmp”、“save.bmp”、“ico.ico”,奖在rc.rc文件里写下如下信息:
OPEN BITMAP open.bmp
SAVE BITMAP save.bmp
ICO ICON ico.ico
资源文件名可以不加引号,也可以加引号。保存rc.rc。
二、创建dll工程
1、在C++ Builder中新建DLL Wizard,在弹出的对话框上选择Use VCL,如下图: