用Delphi编写安装程序(1)


用Delphi编写安装程序(1)


[ 作者: 俞文群 添加时间: 2001-5-5 18:01:08 ]


当你完成一个应用软件的开发后,那么你还需要为该软件做一个规范化的安装程序,这是程序设计的最后一步,同时也是很重要的一步,因为运行安装程序往往是用户做的第一步操作。

  很多报刊文章介绍了许多如何利用installshield等工具软件来制作安装程序的方法,这种办法可以很快建立起较常见的安装模式,但用这种办法也有一些不足,如做成的安装程序一般较大;风格较单一;不能灵活的控制启动方式和快捷方式。其实安装程序的的几个运行步骤较固定,我们完全可以自己来编写安装程序。下面就详细介绍如何用DELPHI编写具有自己软件特色的安装程序。

  安装程序要达到的几个原则,如配置的一次性等,在有关杂志上已有许多文章介绍,就不再累述。这里主要介绍安装程序编写中几个主要过程:

1、将需要安装的程序制作成资源文件
  Step 1:编写myres.rc资源脚本文件,可用记事本等编写。

  MYDBSRC mydbsrcfile c:\resdemo\mynbdb.mdb

  MYDBJET mydbjetfile c:\resdemo\mdac_typ.exe

  MYDBAPP mydbappfile c:\resdemo\Tnbdemo.exe

  7001 Icon c:\resdemo\setup.ico

  Step 2:利用BRCC32编译生成资源文件myres.res。

  brcc32.exe myres.rc

2、编写安装程序代码
  Step 1: 在setup.dpr文件中加入{$R mymyres.RES} 语句,这样在编译文件时包含资源文件。

  Step 2: 编写安装程序背景界面。

   //界面色彩渐变效果是通过用渐变的画刷刷绘依次相邻的矩形块实现的。

  //也可以实现其它特殊效果的安装界面。

  var i,j:Integer;

  Dct:TRect;

  begin

  form1.WindowState:=wsMaximized;

  j:=form1.width;

  //获得表单高度

  for i:=0 to 255 do

  //此处设置RGB()中一个颜色值

  begin

  Canvas.Brush.Color:=RGB(0,0,255-i);

  //每次画矩形的画刷颜色 (左,上,右,下)

  //Dct:=Rect(i*2,0,(i+1)*2,j);

  Dct:=Rect(0,i*2,j,(i+1)*3);

  //每次刷绘的矩形区域

  Canvas.FillRect(Dct);

  Form1.Canvas.TextRect(Dct,30,40,'宁波大学课件管理系统 v1.0');

  //填充颜色

  end;

  end;

  Step 3:创建主程序工作目录

  //设置目录环境及配置文件

  if not DirectoryExists(EdtDir.Text) then

  //   if MessageBox(getfocus,'该目录不存在,是否创建该目录?','询问',1) = idOK then

     try

       ForceDirectories(EdtDir.Text);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
        破天惊工作室delphi源代码          自制安装程序           2/5/2004            作者:破天惊 开发环境:     Delphi7+WinXP 说明:  一个用delphi写的安装程序.  经常在网上看到一些网友询问用什么工具来作安装程序,或是某某安装程序的用法.想了一下,其实也很好作.  主要原理是把要安装的文件作成资源文件,安装时再把资源文件从程序是释放出来.如果对资源文件不熟的话,制作的rc文件附在其中,可以看一下.由于时间的关系,所以在背景音乐播放方面有一点遗憾,只把代码加上了,但是没有加入资源文件,所以如果有兴趣的话,你可以加入一份wav播放看一下.  此外还加入了版本检测的功能,主要是利用注册表,在安装时要先读取注册表,如果发现以前安装过本软件则读取其路径,为本次安装提供方便,如果发现已安装的版本高于些版本则出现提示(由自己来定).  安装一般的程序时,这样的实例已经够了,但是大家知道,如果用到数据库的话,那么一定要带上引擎的,但是这个实例中没有涉及到,有时间的话,我会再写一个出来的.  自己作的安装程序最大的一个好处就是界面可以由自己来定义,但是没办法,我的美工有点差,所以没有什么特别之处,如果有同志能作出好的界面或是有建设性的意见,欢迎联系.  最后要作一点重要的说明,关于那个"神奇的demo"--那不是我作的.可能是九九年(也可能不准确)<<电脑爱好者>>上有一大篇关于它的文章,demo是由几个国外的多媒体高手合作完成的,最后经过了超超超高度的压缩,在不到六十四K的文件里装下了几分钟的仿3D动画,另外还有精美的音效.可以说这是一个奇迹.前不久才不小心从网上下载了下来,和大家分享. 涉及到的知识: 1.注册表的使用; 2.资源文件的制作,使用; 3.多线程中api播放wav; 4.快捷方式; 包含文件:  声明:  本代码,属免费源代码.可用于任何形式的传播.在传播过程中如果有必要,你完全可以不理会本代码的完整性.  破天惊工作室,欢迎交流: E-Mail:Tresss@sohu.com
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值