网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > Delphi
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
本月文章推荐
.DELPHI中动态调用dll.
.用Delphi实现BP机、手机短讯.
.DELPHI的通配符比较.
.创建具有托盘的服务程序.
.《参透delphi》书评.
.拷贝DBGrid当前行.
.Delphi中根据分类数据生成树形结.
.Delphi2005学习笔记1.
.TComboBox下拉取值.
.Delphi例程-应用程序级信息.
.如何实现应用程序中的”回车”成.
.Delphi嵌入式汇编一例.
.通用查询组件设计(续三).
.用Delphi发送SMS(手机短消息服务.
.delphi多线程程序示例(与.net一样.
.NeHe的opengl教程delphi版(3)---.
.远程控制篇:模拟按键.
.获取其他程序中TreeView的内容.
.如何编写SMTP邮件服务器.
.使用ClientSocket控件实现CSDN论.

资源文件的应用

发表日期:2006-2-4


 

建立一个RC文件,本示例程序:SwfFile.rc
RC文件其实就是一个资源文件的描述文本。然后可以输入一些我们要定义的资源,示例:
Flash SwfFile1 Thanks.SWF
然后用BRCC32把这个RC文件编译成SwfFile.RES。
BRCC32 SwfFile.rc保存为Swf.bat批处理文件。
在Delphi的工程文件中使用 $R 编译指令让Delphi包括资源到EXE文件里面。
{$R SwfFile.RES}
此时我们可以在单一的执行文件中调用资源了。示例代码如下:
//资源文件流的应用
procedure FlashResToFile(const ResName, ResType, FileName: string);
var
  FlashRes: TResourceStream;
begin
  FlashRes := TResourceStream.Create(HInstance, ResName, PChar(ResType));
  try
    FlashRes.SaveToFile(FileName); //将资源保存为文件,即还原文件
  finally
    FlashRes.Free;
  end;
end;
//执行资源文件中的Flash播放文件
procedure TFlashResFrm.PlayResFileBtnClick(Sender: TObject);
begin
  if FileExists(ExtractFilePath(ParamStr(0)) + 'Thanks.SWF') then
    DeleteFile(ExtractFilePath(ParamStr(0)) + 'Thanks.SWF');
    FlashResToFile('FLASH', 'SwfFile1', 'Thanks.SWF');
    ShockwaveFlash1.Movie := ExtractFilePath(ParamStr(0)) + 'Thanks.SWF';
    ShockwaveFlash1.Play;
end;

通常在Delphi的应用程序中会调用到很多的资源,例如图片,动画(AVI),声音,甚至于别的执行文件。
ResICO ICON "example.ico"              //加入图标
ResCursor Cursor "example.cur"         //加入光标
ResBitmap Bitmap "example.bmp"         //加入位图
ResAVI AVI "example.avi"               //加入视频
ResWav WAVE "example.wav"              //加入视频

{$R ResDefine.RES}

procedure TResourceForm.FormCreate(Sender: TObject);
begin
  Application.Icon.Handle := LoadIcon(hInstance,'ResICO');
  Application.Title := '资源文件使用集合';
  ResourceForm.Caption := '资源文件使用集合--[Delphi编程驿站:http://yckxzjj.vip.sina.com]';
end;

procedure TResourceForm.Image1MouseMove(Sender: TObject;
  Shift: TShiftState; X, Y: Integer);
begin
  //把MMSystem加入到Interface的uses单元中
  PlaySound('ResWav',HInstance,Snd_ASync or Snd_Memory or snd_Resource) ;
end;

procedure TResourceForm.AVIPlayBtnClick(Sender: TObject);
begin
  Animate1.ResName :='ResAVI' ; //资源标识
  Animate1.Active :=True ;
end;

procedure TResourceForm.BmpShowBtnClick(Sender: TObject);
begin
  //Image1.Picture.Bitmap.Handle :=LoadBitmap(hInstance,'ResBitmap');
  Image1.Picture.Bitmap.LoadFromResourceName(hInstance,'ResBitmap');
  Image1.Visible := True;
end;

procedure TResourceForm.CursorUpdateBtnClick(Sender: TObject);
begin
  Screen.Cursors[1] :=LoadCursor(hInstance,'ResCursor');
  //Image1.Cursor := 1;
  ResourceForm.Cursor :=1;
end;

上一篇:发布delphi代码时的注意事项 人气:3612
下一篇:delphi的面向对象之路1 人气:3390
浏览全部Delphi的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐