附录打包和发布应用程序在创建Visual Basic 应用程序后,您可能希望将该程序发布给其他人。
您可以将使用Visual Basic 创建的任何应用程序自由地发布给使用Microsoft Windows 的任何人。
可以通过磁盘、CD、网络、或者intranet 以及Internet这些途径来发布应用程序。
下面以实例57为例介绍打包和展开应用程序。
一、使用向导进行打包1.启动打包和展开向导Visual Basic 的打包和展开向导使您能够轻松地为应用程序创建必需的.cab文件以及安装程序。
与其它向导一样,打包和展开向导将提示您输入相应信息,以便创建您所需要的准确配置。
要从Visual Basic 中启动打包和展开向导,请按照以下步骤执行:(1)打开想要使用向导来打包或展开的工程。
注意如果您正在使用一个工程组,或已加载了多个工程,则在启动该向导之前,请确保当前的工程就是您要打包或展开的工程。
(2)如果必要,请使用“外接程序管理器”来加载打包和展开向导:从“外接程序”菜单中选择“外接程序管理器”,从该列表中选择“打包和展开向导”,然后单击“确定”,如图1所示。
图1 外接程序管理器(3)从“外接程序”菜单中选择“打包和展开向导”来启动该向导,如图2所示。
打包和展开向导提供了三个选项:“打包”选项帮助您将一个工程的文件打包为一个可以展开的.cab 文件,而且在某些情况下还要创建一个安装程序来安装该.cab 文件。
向导确定需要打包的文件,并引导您作出所必需的选择,以便为您的工程创建一个或多个 .cab 文件。
“展开”选项帮助您将打好包的应用程序传送到适当的发布媒体,例如软盘、网络共享、或Web 站点。
“管理脚本”选项让您可以查看和操作以前使用打包和展开向导时所保存的脚本。
每次使用该向导时,都会保存一个包含您所做的所有选择的脚本。
在以后的过程中,如果您想使用相似的设置值以及做出与原来相同的选择,就可以重新使用这些脚本。
图2 打包和展开向导注意:打包和展开向导只能为Visual Basic 应用程序创建安装程序和发布媒体。
如果要为其它基于Windows 的应用程序创建安装程序,请使用与相应的开发产品一起提供的安装工具包或在Windows SDK 中提供的安装工具包。
2.使用向导为应用程序打包为应用程序打包是指创建一个软件包的操作,该软件包可以将您的应用程序安装到用户的计算机上。
软件包由一个或多个.cab 文件组成,文件中包含了用户安装和运行应用程序所需的被压缩的工程文件和任何其它必需的文件。
这些文件可能包括安装程序、辅助的.cab 文件或其它必需的文件。
这些附加的文件根据您创建的软件包类型不同而不同。
具体过程如下:(1)启动“打包和展开向导”,在“打包和展开向导”窗口中单击“打包”。
(2)在接下来的对话框中视具体情况选择“是”或“否”,在这里我们选择“是”,如图3所示。
图3 是否进行重新编译(3)选择打包脚本,如图4所示。
图4 打包脚本(4)确定要创建的软件包类型您可以为基于Windows 的、要通过磁盘、CD或在网络上发布的程序创建一个标准软件包;或者可以为要在Web 上发布的程序创建一个Internet 软件包。
也可以选择只创建从属文件,在这里我们选择“标准软件包”,如图5所示。
图5 确定要创建的软件包类型您可以创建两种软件包,标准软件包或Internet 软件包。
如果计划通过磁盘、软盘或网络共享来发布应用程序,则应创建一个标准软件包。
如果计划通过intranet 或Internet 站点来发布,则应创建一个Internet 软件包。
在多数情形下,可以使用Visual Basic 提供的打包和展开向导来为您的应用程序打包。
您可以手工打包应用程序,不过向导提供了很有用的快捷方式,并能自动处理一些在手工打包过程中不得不自己完成的任务。
除了创建标准和Internet 软件包之外,还可以使用打包和展开向导的打包部分来创建从属文件。
从属文件列出了必须随应用程序的工程文件一起发布的运行时部件。
重点:无论何时创建软件包,您都应确保已在“工程属性”对话框的“生成”选项卡中设置了工程的版本号码。
如果您要发布一个现有应用程序的新版本,那么这一点特别重要:如果没有对版本号进行适当的更改,最终用户的计算机可能会认为关键文件不需要更新。
(5)新建打包文件夹,缺省为“包”,如图6所示。
图6 新建打包文件夹(6)确定需要发布的文件向导在创建软件包之前,必须确定应用程序的工程文件以及从属文件。
特别是需要的图像、声音及readme.txt等文件,添加这些文件可单击“添加”,如图7所示。
图7 选择包含的文件(7)确定压缩文件的个数及大小如果要用软盘发布应用程序,请选择多个压缩文件,大小选为1.44MB;如果用光盘发布,可选择“单个的压缩文件”,如图8所示。
图8 选择压缩文件选项(8)设定安装文件标题,例如mp3player,如图9所示。
图9 设置安装程序标题(9)设置安装在“开始”菜单“程序”中的位置,如图10所示。
图10 设置启动菜单项(10)确定将文件安装到用户机器上的位置程序和安装文件通常被安装到Program Files目录的某个子目录中,而系统和从属文件通常被安装到\Windows\System 或\Winnt\System32目录中。
您的安装程序必须考虑这一点,并确定每个文件要被安装在何处,如图11所示。
图11 设置安装位置(11)设置共享文件共享的应用程序文件是指可能被系统中的多个应用程序使用的文件。
例如,可能有多个软件商提供的应用程序都使用了同一个ActiveX 控件。
如果您创建了一个使用该控件的应用程序,则应在安装程序中将该控件的.ocx 文件指明为共享文件。
共享文件必须安装在一个其它应用程序可以访问到的位置。
在多数情形下,对于Windows 98 和Windows NT 4.0 及更新版本,这个位置是\ProgramFiles\Common Files。
当最终用户卸载您的应用程序时,只有当其它应用程序没有使用这些共享文件时,系统才会将其删除。
本例中可以设为共享文件的是mp3play2.exe,但由于它只是个一般应用程序,所以不必设为共享文件,如图12所示。
图12 设置共享文件(12)设置软件包脚本名称输入脚本名称,单击“完成”,系统开始压缩文件,完成打包过程,如图13所示。
图13 设置脚本名称3.标准软件包和Internet 软件包3.1 标准软件包标准软件包是一种专门用setup.exe 程序安装、而不是从Web 站点下载.cab 文件而设计的软件包。
您可以为基于Windows 的、要通过磁盘、CD或网络共享来发布的应用程序创建标准软件包。
当创建标准软件包时,必须在创建软件包之前仔细考虑计划使用的发布方法。
如果计划使用软盘来发布,那么通常需要创建多个可以分别放置在若干张软盘上的.cab 文件,而不能创建一个大的.cab 文件。
打包和展开向导中有一个选项让您指定是要创建一个还是多个.cab 文件,以及要使用的.cab 大小(1.44 MB、1.2 MB 等等)。
如果您选择要创建多个.cab 文件,向导将把应用程序文件分成若干个不超过指定大小的文件组。
重点:即使计划要发布到软盘上的应用程序小到当打包为一个大的.cab 文件时也足够放置到一张磁盘上,您也仍然应该选择“多个 .cab 文件”选项,以便您在随后的向导操作中可以访问软盘的展开过程。
而在这里,只创建了一个.cab 文件。
如果计划展开到网络或本地共享目录、CD或Web 站点上,则既可以创建一个大的.cab 文件,也可以创建多个较小的.cab 文件。
标准软件包的必要部分有若干个文件将始终作为标准软件包的一部分。
这些文件包括:(1)setup.exe 文件Setup.exe 是一个预安装可执行程序。
安装过程中第一个在用户机器上运行的程序就是Setup.exe,该程序执行在主安装之前必须进行的必要处理。
(2)setup1.exe 文件Setup1.exe 是应用程序的主安装程序。
(3)所有必需的支持文件支持文件存储在\Support 子目录,位于创建该软件包的目录的下一层。
除了setup.exe 和setup1.exe 文件之外,该目录还包含用于自定义应用程序的.cab 文件所需的文件,以备用户的需要。
(4)应用程序的.cab 文件Internet 应用程序和基于Windows 的应用程序在发布前都将被打包到.cab 文件之中。
.cab 文件取代了Visual Basic 原来版本中的一长列被压缩的应用程序文件。
现在所有这些被压缩的文件都包含在.cab 文件中。
可以为应用程序创建一个单一的.cab 文件,也可以为软盘发布方式创建多个.cab 文件。
注意:如果要在双向的(BiDi) 操作系统上运行应用程序,则需要手工在打包和展开向导所创建的Setup.lst 中包括vbame.dll 文件。
要实现这个操作,可以在运行打包和展开向导时,在“包含文件”屏幕上通过直接编辑Setup.lst 来添加该文件;或者在vb6dep.ini 文件中为vbame.dll 添加一项,以便不论何时运行打包和展开向导,该文件都将被自动添加到Setup.lst 中。
如果应用程序使用了Visual Basic 的数据访问技术之一,例如数据访问对象(DAO)、ActiveX 数据对象(ADO)或远程数据对象(RDO),则打包和展开向导打包过程中还将执行两个附加步骤:如果应用程序使用了ADO、OLEDB或ODBC 部件,向导将自动添加一个名为mdac_type.exe 的文件到要包含软件包的文件列表中。
Mdac_type.exe 是一个自解压的可执行程序,它将安装您的数据访问技术所需的所有必需部件。
3.2 Internet软件包Internet 软件包是基于.cab的安装程序,它是专为从Web 站点下载而设计的。
Internet Explorer 使用一个称为“Internet部件下载”的过程来安装Internet 应用程序。
打包和展开向导自动包括其所创建的软件包所需的信息。
有多种类型的Visual Basic 应用程序或部件可以被打包,以供Internet 展开,其中包括:(1)在Web 页上显示的ActiveX 控件(.ocx 文件)。
(2)用于在客户或Web 服务器上运行的ActiveX .exe 或.dll 文件。
(3)代替Web 页显示的ActiveX 文档。
?DHTML 应用程序,基于客户的、通过使用动态的HTML 来链接HTML页与Visual Basic 代码的应用程序。
(4)IIS 应用程序,基于服务器的、链接HTML 页与webclass 对象的应用程序。