我们所运用的Windows应用程序,大多数程序都使用了图标、图片、光标、声间音等资源。资源是程序的一部分,但它是不可执行的代码。下面我就详细介绍MP3声音文件资源在Delphi6中的创建和使用方法。
1、创建资源文件
首先建立一个名为MyMusic.rc的纯文本文件,格式如下:
MUSIC1 FILE1 MOON.MP3
2、编译资源文件
在DOS命令环境下执行下列命令:
Brcc32 MyMusic.rc
注意:Brcc32.exe在Delphi6/Bin文件夹下。
3、在工程中引用资源文件
为了取得资源文件,必须将资源文件链接到应用程序中。在Delphi自带的编译指令-------{$R *.DFM}后加入一条新的指令-----{$R MyMusic.res}。
4、调用资源文件
在MP3资源文件读取时,需要调用Delphi自带的TResourceTream对象,并应用了Windows API 中的MCISendString 函数。
5、程序的基本代码如下:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs,mmsystem, StdCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
{$R MyMusic.res}
procedure TForm1.Button1Click(Sender: TObject);
var
res:TResourcestream;
filename:string;
begin
filename:='temp.mp3';
res:=TResourcestream.Create(0,'MUSIC1',Pchar('FILE1'));//建立流
res.SaveToFile(filename);// 建立一个临时文件
MCIsendstring(Pchar('open '+filename+' type mpegvideo alias ww'),nil,0,0);//打开文件及播放设备
MCIsendstring('play ww',nil,0,0);//播放MP3文件
res.Free ;//释放内存中的数据
deletefile(filename);//删除临时文件
end;
end.