2024年5月5日发(作者:)

Vb6打包程序的常见问题及对策 (很典型,包括Internet下载).txt一个人 一盒烟 一台

电脑过一天一个人 一瓶酒 一盘蚕豆过一宿。永远扛不住女人的小脾气,女人 永远

抵不住男人的花言巧语。 作者:meteor

email: xxzxly@

日期:8/29/2001 2:38:17 PM

打包和展开向导是一种工具,它能帮助您为 Visual Basic 应用程序创建包装成一个或

多个 .cab 文件,cab 文件中包含了用户安装和运行应用程序所需的被压缩的工程文件和任

何其它必需的文件,并将它们安装到最终用户的机器上。打包和展开向导将自动完成使创建

和部署这些文件的很多工作。

您可以创建两种软件包,标准软件包或 Internet 软件包。如果计划通过磁盘、软盘,

或网络共享来发布应用程序,则应创建一个标准软件包。如果计划通过 intranet 或

Internet 站点来发布,则应创建一个 Internet 软件包。您可以使用 Visual Basic 的打包

和展开向导来创建到软盘、CD、本地或网络驱动器、以及 Web 上的软件包。

一、 标准软件包部分

如果使用打包和展开向导,向导将自动创建 文件。如果需要自定义该文件,

您可以在该文件被创建后,手工进行编辑。

文件描述了为您的应用程序必须安装到用户机器上的所有文件,此外还包含

了有关安装过程的关键信息。例如, 文件告诉系统每个文件的名称、安装位置、

以及应如何进行注册等。 文件共有五个段:

BootStrap 段 - 列出了关于应用程序的核心信息,例如应用程序的主安装程序的名称、

在安装过程中使用的临时目录、以及在安装过程的起始窗口出现的文字。

Setup1 Files 段 - 列出应用程序所需的所有其它文件,例如 .exe 文件、数据、以及

文本。

Setup 段 - 包含应用程序中的其它文件需要的信息。

Icon Groups 段 - 包含了安装过程将创建的程序组的信息。这部分的每个成员都有一个

与之相关的部分,包含了在这个程序组中要创建的图标。

BootStrap 段包含 文件安装和启动应用程序的主安装程序所需的所有信息。

注意 请记住,在安装过程中要用到两个安装程序:一个是 ,这是一个预安装

程序;另一个是 ,这是由安装工具包编译生成的。BootStrap 部分将为

文件提供指示。

BootStrap 段包含下述成员:

SetupTitle 当 将文件复制到您的系统时所出现的对话框中显示的标题。

SetupText 当 将文件复制到您的系统时所出现的对话框中显示的文字。 CabFile

应用程序的 .cab 文件的名称,或者,如果软件包有多个 .cab 文件,则表示第一个 .cab 文

件的名称。 Spawn 当 完成处理后要启动的应用程序名称。在大多数实例中,这

个名称将是 文件。 TmpDir 存放在安装过程中产生的临时文件的位置。

Uninstall 用做卸载程序的应用程序名称。一般来说,该程序是 ,这个文

件是由向导创建所有的软件包时自动打包加入的。

BootStrap Files 段 - 列出了主安装文件所需的所有文件。通常这部分只包括 Visual

Basic 运行时文件。BootStrap Files 段列出了在加载您的应用程序和从属文件之前,必须

加载入用户机器的所有文件。这些预安装的、或称为引导文件,包括运行任何 Visual Basic

应用程序所必需的核心文件,例如 Visual Basic 运行时 DLL ()。安装程序在

安装和启动主安装程序之前将安装这些文件。

Setup1 Files 段包含了您的应用程序所必需的所有其它文件,例如 .exe 文件、数据、

文本以及从属文件等。安装程序将在安装了 Bootstrap Files 段所列出的核心文件之后安装

这些文件。

Setup 段: 文件的 Setup 段是一个简单的列表,它列出了安装过程的其它部

分所使用的信息。下表列出了 Setup 段所包含的信息。Title 将出现在安装期间的快速显示

屏幕、“启动”菜单的程序组、以及程序项名称上的应用程序名称。 DefaultDir 缺省的安装

目录。用户可以在安装过程中指定一个不同的目录。 ForceUseDefDir 如果为空,则会提示

用户输入一个安装目录。如果设为 1,则应用程序将自动安装到 的 "DefaultDir"

所指定的目录中。 AppToUninstal 应用程序在“控制面板”中的“添加/删除程序”实用程

序中出现的名称。AppExe 应用程序的可执行文件的名称,例如 。

IconGroups 段包含了关于安装过程所创建的“启动”菜单的程序组的信息。每个要创建

的程序组首先在 IconGroups 部分列出,然后指定一个单独部分(Group0, Group1, Group2,

等),在此部分中包含关于这个程序组的图标和标题的信息。程序组从 0 开始顺序编号。

1. 创建“启动”菜单的程序组

按照向导,选择“下一步”来到“启动菜单项”。先选中“programs”-“新建组”-输入

“启动”-“新建项”-“输入您想加入启动项中的名称如“启动应用程序”,按“下一步”直

至“完成”。

如图所示

打开生成的文件,注意IconGroups 段中的条目及其相关的子段:

[IconGroups]

Group0=工程1

PrivateGroup0=True

Parent0=$(Programs)

Group1=启动

PrivateGroup1=False

Parent1=$(Programs)

[工程1]

Icon1="设置墙纸.EXE"

Title1=工程1

StartIn1=$(AppPath)

[启动]

Icon1="设置墙纸.exe"

Title1=设置启动程序

StartIn1=$(AppPath)

[Setup]

Title=工程1

DefaultDir=$(ProgramFiles)工程1

AppExe=设置墙纸.EXE

AppToUninstall=设置墙纸.EXE

当您运行向导所创建的安装程序时,在“选择程序组”中会出现如图所示,您就可以把

程序放在“启动程序组”中了。

如图所示

2. 提供一个联机帮助安装选项

除了使用安装工具包工程来创建您的自定义安装工程外,还可以将安装工具包工程与打

包和展开向导一起使用。在这种情况下,您可以使用安装工具包工程来自定义安装过程的屏

幕或其它部分,然后使用向导来创建和部署应用程序的软件包。例如,您可以提供一个联机

帮助,而用户也可以不安装。可以按照您的需要添加任意的安装选项。您还可以将安装工具

包与打包和展开向导一起使用,以便为安装工程添加对话框,提示用户指定是否安装应用程

序的可选功能。

在 工程中,编辑 窗体中的 Form_Load 事件的代码。在调用

ShowBeginForm 函数 (Sub ShowBeginForm) 的代码块之后添加如下代码。

下面的示例显示了如何添加一个对话框,来询问用户是否要安装可选文件:

Dim LoadHelp As Integer

LoadHelp = MsgBox ("Do you want to install Help? ", vbYesNo)

If LoadHelp = vbYes Then

CalcDiskSpace "Help"

EndIf

' 包含 cIcons = CountIcons(strINI FILES) 的代码块

If LoadHelp = vbYes Then

cIcons = CountIcons("Help")

EndIf

' 包含 CopySection strINI_FILES 的代码块。

If LoadHelp = vbYes Then

CopySection "Help"

EndIf

' 包含 CreateIcons, strINI FILES, strGroupName 的代码块

关闭 ,保存该窗体以及安装工具包工程,并编译创建 文件。

运行打包和展开向导,并从主屏幕中选择“打包”。根据向导的各个屏幕进行适当的选择。

对上面的示例,您可以在“添加和删除”屏幕中列出的“自定义”对话框中确认用户可以选

择安装的所有可选文件。在完成打包和展开向导的所有操作后,将生成发布媒体。

对 文件进行必要的更改。在上面的示例中,您可以在代码的 CopySection 部

分所使用的部分中添加一个新的部分。在这种情况下,这个部分可能会象下面这样:

[Help]

File1=1,,$(AppPath),,,10/12/96,2946967,0.0.0

部署并测试您的软件包。

当用户运行本过程所示示例的安装程序时,安装程序将所有的 BootStrap 文件复制到用

户机器,然后提示用户指明是否安装帮助文件。如果用户选择“是”,则 CalcDiskSpace 语

句将确定在是否用户机器上是否有足够的磁盘空间来存放帮助文件。然后该程序安装

中的 Setup1 Files 部分列出的所有文件。.接下来,程序将再测试一次 LoadHelp

标记。如果用户选择安装帮助文件, 就开始为帮助文件执行 CopySection 语句,

然后安装 的 [Help] 部分所列的文件。