拷个给你。
组件安装和程序发布
在这最后一讲中,心铃为大家简单介绍一下程序发布和第三方组件的安装知识。我们编写好了一个软件,要提供给别人使用,一般来说需要制做一个安装程序吧。现在网上有各种各样的免费或共享组件,有些是功能非常强大的,充分利用已有组件对开发程序是非常有益的,因为您站在了别人的肩膀上,对这些组件如何安装也是初学者经常碰到的问题。下面我们就分别来谈谈。
组件安装
现在网上或一些Delphi编程光盘上提供的组件很多,有免费带源码的、有免费不带源码的、有共享的、有收费的,有些功能简单,有些功能强大,但并非只有收费的功能才强大,一些免费带源码的同样毫不逊色。比如大名鼎鼎的RxLib(目前是2.75版本)组件包,俄罗斯人编写的,内含几十个组件,有源码,很值得一用。那么得到这些组件后如何安装呢?由于组件提供的方式不同,所以安装的方法也是不一样的,下面就目前常见的各种形式的组件的安装方法介绍一下。
1只有一个DCU文件的组件。DCU文件是编译好的单元文件,这样的组件是作者不想把源码公布。一般来说,作者必须说明此组件适合Delphi的哪种版本,如果版本不对,在安装时就会出现错误。也正是因为没有源码,给使用者带来了不便,那就是一旦Delphi版本升级,此组件就不能再使用了,当然有的作者给出了几种版本的DCU文件,用户根据需要选择使用。这样的组件的安装方法是:在Component菜单中,选择install component,在对话框中的"into existing package"页中,单击“Unit file name”后的“Browse”按钮,在打开的文件对话框中,将“文件类型”设定为*.dcu,找到要安装的DCU文件,按OK按钮返回"into existing package"页后再按OK按钮就可以安装了。注意,此时Delphi会提示dclusr40.dpk将被重建,是否继续,OK就可以了。这里是将组件安装到dclusr40.dpk包中,此包从文件名上可以看出是用户自定义组件包,先安装到这个包中吧,下面再讲有关注意事项。安装完毕会有已经将组件注册完的提示信息以及安装到哪个组件页中的信息等,到组件面板上看看,一般会出现一个新的组件页,其中有刚安装的组件。
2、只有PAS文件或既有PAS又有DCU文件的组件。这种组件因为有PAS文件,也就是说作者提供了源码,这就好办多了。安装的方法和上面是一样的,在文件类型中可以设定为DCU也可以设定为PAS,建议设定为PAS,这样可用你的Delphi重新编译一下,看是否会出现问题。Delphi升级后只能选择PAS文件安装,这样才能重新编译,使得组件能适应新Delphi版本。这样的组件是很值得使用的,根据心铃的经验,没有源码的组件最好不要使用,一是存在Delphi版本升级后无法使用的问题,再者当程序出现问题后用户无法调试组件来判断是否是组件中存在BUG。
3、有dpk文件的组件包。带有dpk文件的组件包一般是有多个组件构成的,也就是说安装后会有多个组件供使用,如果只有一个组件作者一般不会制成DPK文件,使用上面的方式发布就可以了。对于这样的组件包,一般来说会有详细的安装说明文件,如上面提到的RXLIB,由于组件复杂且安装时有先后顺序,作者不提供安装说明用户根本无法正确安装。如果没有安装说明文件,那么用下面的方法安装:在File菜单下,选择”OPEN…”打开dpk文件(文件类型列表框中选*.dpk),在出现的Package窗口中,工具栏上有Install按钮,按此按钮即可进行安装。如果Install按钮处于无效状态,那么先按Compile按钮编译,一般来说编译之后Install按钮就会处于有效状态,此时再按Install按钮就可以了。
4、带有Bpl文件的组件包。一般来说这也是由多种组件构成的组件包,它其实是一个动态连接库文件(DLL)。对于这种组件包的安装方法是:在component菜单下选择“install packages”,然后单击Add按钮,在打开的文件对话框中找到相应的bpl文件打开返回后,再单击Ok按钮就可以了。
5、ActiveX控件的安装。要安装这类控件,需要先用regsvr32.exe注册,然后选择Component菜单中Import ActiveX Control项。在Import ActiveX Control打开的窗口中,只有已经注册的ActiveX控件才出现在列表中,选中一个然后按Install按钮就可以安装了。如果事先没有用regsvr32.exe注册也可以按ADD按钮找到OCX文件即时注册,注册后再进行安装。
几点说明:1 在拿到组件后先看是否有说明文件,一般来说在说明文件中有如何安装的指导,有些还会有组件的属性、事件、方法的使用说明,这些在使用时是非常重要的。2 在上面的组件(包)安装操作之前,最好将 *.bpl拷贝到你的System目录中,将 *.pas、*.dcu、*.dcr、*.dp?拷贝到Delphi的Lib目录中再进行。3 前面我们提到安装DCU组件时,选用的是已经存在的dclusr40.dpk,当然也可以选择安装到一个新的包中,如果选择新包,需要先取一个名字比如DEMO,事实上安装完毕后用户可以找到的是Demo.bpl,而找不到DEMO.DPK。假如你已经将一个组件安装到dclusr40.dpk中了,还想再安装一个组件,如果再安装到dclusr40.dpk中,安装后你得到提示,原来安装的那个组件已经被取消注册,你将无法使用了。这样不就成了只能安装一个组件了吗?除非你再安装到一个新的包中才可以两个组件同时使用。当然每安装一个组件生成一个新的BPL文件也未偿不可,但BPL文件就增加许多。能否在dclusr40.dpk中多安装几个组件呢?当然是可以的。方法如下:用File菜单下的OPEN打开dclusr40.dpk文件,单击ADD按钮,在打开的对话框中选择ADD UNIT页面,按Unit file name后的“Browse”按钮打开组件单元文件,OK即可,用此种方法这样可添加多个组件的单元文件,添加完毕,按一下编译按钮,然后再按Install按钮即可,如果单元文件是编译好的(DCU)可以直接按安装按钮。4 组件的删除。光会安装可不行,还要会删除呀。很简单,在component菜单下,选择install packages,在列表中找到安装所在的Bpl,按Remove按钮,ok!再把Bpl文件删掉就彻底了,如果不删除BPL文件,下次可以按安装BPL组件的方法再安装使用。
程序发布
Delphi下发布程序最好就是用Delphi自带的发布工具InstallShield Express for Delphi 4.0,以下简称ISED。其实ISED是InstallShield公司专门为Delphi定制的一套发布软件,InstallShield有通用的版本,最新版本是InstallShield 2000.功能非常强大。由于许多软件都是用InstallShield进行程序发布,也就难怪大家看到的软件安装界面都是非常类似的。
ISED在Delphi安装盘上就有,在第一讲中心铃已告诉大家最好安装上它,如果还没有安装现在安装吧。InstallShield具有灵活性高、功能强诸多特点,并拥有自己的一套编程语言(与C相似),对于初学者来说自己编程是比较麻烦的。它的详细说明恐怕没有几万字是讲不清除的,在这里我们只能简单介绍一下如何使用它发布程序,要想详细了解只能去阅读它的帮助手册了。为了节约版面,尽量不插图片,读者对照着实际的运行界面阅读吧。
运行ISED出现一个对话框,选择创建新工程或在FILE菜单中选择NEW都可以。在New project界面中,输入工程文件名(Project Name),比如Mysetup,在Project path中可选择存放路径或选择好磁盘后在New subdirectory中输入新的目录名称,然后单击Create按钮就可以了。接下来进入Setup Checklist 界面,在这里共有九个步骤(黑体显示)需要用户设定,下面我们逐个介绍。
1 Setup the visual Design.在这一步下有三个设定项,鼠标单击打开对话框,在对话框中有三个页面(对应着三个设定项),App Info中设定应用程序的名称、版本、公司、缺省安装目录,单击Browse按钮打开可执行文件所在的路径选中。在Main window页面中,Main Title下的两个选项决定安装背景是用图片还是用文字。如果有LOGO图片可以选中并指定它显示的位置,最后是背景颜色设定。Features页面中只有一个选择,那就是是否在安装后具有自动卸载功能,当然应该选中了。
2 Select InstallShield Objects。这里有两个页面需要设定。一是General,在这里供用户选择组件包和BDE(数据库程序),除数据库程序外,如果您的程序编译时采用的是不带运行库的方式(EXE文件较大)可以不选择任何组件,如果编译时采用是带运行库的方式(EXE文件很小)就需要将程序中用到的运行库组件选中。对于数据库程序,要选中BDE,在选中后将会弹出BDE安装界面,让用户选择是全部安装还是部分安装BDE驱动程序,如果你有把握可以只选需要的BDE驱动文件,否则就全选吧。然后单击下一步,设定数据库别名,按NEW给出数据库别名,要和你程序中使用的是一样的。单击下一步选择是否可使设定可在16位和32下同时使用,一般不用选了吧,现在谁还在用WIN3.2呢。再按“下一步”,在这里为数据库别名指定对应的实际数据库(PATH中设定),并在TYPE中设定数据库类型,如果数据库打开时需要参数就在下面设定吧,再单击下一步按完成按钮就可以了。Advance页面中是根据用户在General中的选择自动列出的所需文件,供用户查看。
3 组件和文件的设定。这里有三个页面。在Group页面中有几个文件夹,依用户前面的设定而不同,一般都会有程序文件、帮助文件、例子文件这三个最基本的文件夹。用户选中后单击Properties(属性)按钮可修改其名称、文件更新方式以及安装目标平台(可以选择适用哪种环境,比如WIN98),根据需要选择,不要都选中。如果你的程序不是太复杂可以将所有的文件都放置到程序文件夹中。添加自己的文件比如帮助文件、数据文件等,按”Insert file ”按钮选择文件就可以。这是需要自己做的,ISED不会自动添加这些文件。Components和Setup Type主要是在用户选择定制安装时哪些组件和文件安装哪些不安装的,初学者一般用不到,这里就不讲了,需要的话请看帮助文件或到网上去找资料吧。
4 用户安装界面设定。这里有许多选项,大家看右边的示意图就明白了,主要是欢迎画面、欢迎信息、进度条、选择安装路径之类的设定,根据需要设定吧。
5 注册表修改。在这里有两个页面供用户在注册表中添加注册键和值。一般来说,对稍复杂一些的程序可以设定一些键值,如文件名关联、用户打开文件记忆功能、窗口界面位置保存等,由于要对WIN9X注册表操作,可要小心一点,对注册表的操作不是我们要讲的内容,要想使用此功能,先把注册表研究透吧。
6 程序运行设定。在这里有两个页面,选择运行哪个可执行文件、命令行参数,运行后窗口的方式,如果是最大化或最小化还可以选择相应的图标。还可以选择程序运行时的起始路径及图标,根据需要设定。
7 制做安装文件。上面的设定完成之后,就可以进行安装程序制做了,用户选择发布用的介质,如使用软盘发布可选择1.44M,这样自动按1.44M为最大限度制做几个镜像盘,如果用光盘发布,选择CD�ROM,这样制做的文件不用考虑大小了,选好介质之后按”Build”按钮就可以了,用户可看见制做过程和信息。
8 安装试验。制做完毕,是否达到了设计要求,我们可立即进行安装试验,如果有不合适的地方马上进行修改,修改之后再重新制做安装文件,直到满意为止。在安装时你将发现您的安装程序还是很有专业水平的,感到很高兴吧。安装完毕,试运行一下功能是否完整,看有关的文件是否安装正确,最后将程序卸载,看卸载功能是否完善。
9 拷贝文件。安装试验满意后,就可将文件拷贝到磁盘中了,不用多说了吧。
上面只是粗略介绍了一下安装程序的制做,至于如何制做成中文的界面,网上或报刊上都有资料,这里就不介绍了。现在还有其他一些安装程序制做软件,比如另一个常用的是WISE,也是功能很强大的。
结束语
到本讲为止,二十讲内容就全部讲完了,由于版面所限,不可能面面俱到,只是对心铃认为比较基础的内容做了讲述,由于心铃水平所限,也不知道带领几位读者入了门。心铃在此感谢那些阅读讲座的朋友们,你们能化时间阅读心铃的讲座,就是心铃最大的满足,同时对责任编辑王华兵先生致以深深的谢意,感谢王编辑给了心铃与读者共同提高的机会。
为便于大家保存讲座,心铃已经将所有讲座制成了现在流行的chm文件放在了心铃主页http://lkpc.126.com上,欢迎下载。心铃原来为大家介绍的一些Delphi编程站点,特别是中文站点,现在有许多都长时间不更新或找不到了,为此心铃准备在讲座完成之后有时间把主页做得完善一些,多向读者提供一些编程资料,除了免费主页提供商的广告外(不得已)不加商业广告,不劳大家点击广告,真诚为大家服务,这也是心铃做主页的准则 留一份真诚在网上。欢迎到家中作客!
祝朋友们事业有成!朋友们,再见!