Installshield 12 中文系列教程 之 Installscript 项目(一)

Installshield 12 中文系列教程 之 Installscript 项目(一)

×××××××××××××××××××××××××××××××××××××××××××××××
声明:本文为《打包技术网》原创,转载请保留此声明并注明出处,仅供网友学习使用,勿用于商业用途。
作者:棒槌_007
联系方式:QQ 113984419 MAIL:bangchui_007@126.com

说明:本人E文实在一般,文中有翻译不准确的地方,请各位见谅。
×××××××××××××××××××××××××××××××××××××××××××××××




这个部分通过带领你使用
InstallShield 新建,编译,运行来增强一个使用安装脚本的安装程序
这个教程划分了一些列的步骤。在第一步后“第一步:建立,编译,测试项目”其他的步骤能够按照任意的顺序单独的运行,所以你可以集中注意力在这个部分的相关的内容上。
在这个教程中,你将要学习到如何完成一个安装程序中要执行的多个任务,包括:
  • 安装文件
  • 设置快捷方式和注册表数据
  • 条件安装数据
  • 更改安装过程中的用户界面
  • 编译发布镜像文件
  • 测试安装

这些内容在的相关链接贯穿整个帮助支持库。

第一步:建立,编译和测试项目
这个步骤示范如何建立一个脚本安装项目,编译发布文件,测试安装程序。完成这个步骤后,你将认识到如何去:
  • 使用项目助手建立一个新项目
  • 制定安装项目的整体属性
  • 定义安装类型、功能部件、组成部分和文件链接
  • 编译一个发布文件的副本
  • InstallShield用户界面运行你的安装程序

一个安装程序主要由三个层次构成
  层次
  
  描述
  
  组件
  

(构件)


  
  从开发者的视角来看一个组件是你的产品中的最小单独安装块。一个组件规定了文件、快捷方式,注册表数据和其他的在目标计算机上要安装的内容。最终用户从不与组件直接接触。
  一个组件能够被用于多个功能区,只要用户选择了最小功能,那么它的关联组件就会被安装到目标计算机上。
  
  

功能部件


  

(特色)


  
  从用户的视角来看一个功能部件是你的项目中最小可单独安装的部分。如果用户选择了自定义安装类型,那么将有一个可供用户选择安装功能部件的对话框出现。
  每一个功能区都包含组件。
  
  

安装类型


  
  安装类型是一个预定义的功能部件。按照惯例,一个安装程序提供典型、最小和自定义安装类型,用户可以在安装类型对话框中选择相应的安装类型。
  

你在本教程中将要创建、配置的安装程序叫做 Tutorial APP 。这个程序的源文件在安装目录下的 Samples/IsDevTutorial 子目录下面。


使用项目助手新建一个项目

通过浏览InstallShield 创建一个新安装脚本项目需要下面的步骤。
1、 通过下列方法打开New Project (新项目)对话框:

  • 单击Start Page's Project Tasks(项目任务起始页)中的Create a new project(创建一个新项目)链接。(在页面的左边)
  • 选择Files(文件)菜单中New(新建)命令
  • 单击工具栏中的New Project (新项目)按钮。
2、 New Project (新项目) 对话框中,单击 InstallScript 标签
3、 InstallScript 标签列表中, 选择 InstallScript Project 图标
4、 Project Name 编辑框中输入项目名称 Tutorial.

5、 单击 OK.

这里有很多其他的方法来新建一个项目,比如使用InstallShield 专业版来创建一个更新项目。要了解更多可以参看“ Creating NewProjects ”部分。
InstallShield 建立的项目文件叫做 项目名称.ism ,在这是Tutorial.ism 。这个项目文件保存了你在用户界面所有的设置。如果要把这个项目移动到另外的计算机上,复制这个 .ism 文件(和其他的安装源文件)到另外的计算机上就可以了。

提示:如果你要更改新项目的默认路径,从工具菜单中选择选项,选择File Locations标签,在“Project Location”输入新的路径即可。


你新建的项目这时已经在Project Assistant标签页打开。要开始使用项目助手,单击右下角的NEXT(下一步)按钮。


提示:你可以按照任意顺序来使用Project Assistant中的步骤,可以在任何时候通过点击适当的标签在Project Assistant
Installation Designer
模式之间切换,在安装项目中添加更加复杂功能强大的功能。


指定应用程序信息

这个应用程序信息页可以让你指定关于你的安装程序的总说明信息。
按照下列步骤完成:
1 、在 Specify your company name (指定公司名称) 编辑框中输入 Tutorial Co
2 、在 Specify your application name (指定应用程序名称) 编辑框中输入 TutorialApp
3 、保留其他的内容不变

你在应用程序名称区域输入的内容将用在最终用户的对话框上显示,并且这个名字将在最终用户的“添加/删除程序”面板中作为应用程序名显示出来。你输入的应用程序名和公司名确定了在Windows开始菜单中默认的应用程序快捷方式,并且为目标计算机需要的TARGETDIR(目标目录)系统变量提供了默认值。

定义安装体系结构

安装结构页可以让你指定你想通过安装程序显示的功能部件。从用户的观点看一个功能部件是一个最小的可以单独安装的产品部分。当最终用户选择自定义安装类型时,单独的功能部件可以直接的显示出来。
提示:功能部件可以包含子功能部件,子子功能部件甚至更多,你可以添加你的安装程序所需要的多个层级。

按照下列步骤完成:
1、针对Do you want to customize your Installation Architecture?(你是否想自定义你的安装程序结构?)这个问题,选择 YES
2、选择已有的DefaultFeature功能部件并且重命名 ProgramFiles
3、建立一个新功能部件HelpFiles。点击InstallationArchitecture然后点击New按钮


给你的项目添加文件
应用程序文件页可以让你为每一个功能部件指定你想链接的文件。
首先从功能部件列表中选择你要插入文件的功能部件。要添加文件链接,单击Add Files 按钮,浏览选择要包含到功能部件中的文件。
在本教程总,按照下列步骤添加Tutorial. exe 文件到ProgramFiles 功能部件中:

1、从功能部件列表区中,选中ProgramFiles

2、 在树形结构(目标计算机的总节点)中,选择 Application TargetFolder (应用程序目标文件夹)
3、 单击 Add Files.
4、 在源目录中找到Tutorial.exe

5、 当出现"The file you have added ... may havedependencies" 提示信息时,单击 No Tutorial.exe 文件没有依存关系。

添加再发布内容
应用程序再发布页可以指定你的应用程序所需要的任意第三方技术,例如, MDAC MFC ,或者DirectX 。你可以使用选择按钮来指定任意这样的需求;如果你的应用程序需求没有在询问和选择列表中体现,你可以单击Objects 链接从Project Assistant 切换到InstallationDesigner ,就可以看到全部可用对象和封装第三方技术的链接模块的列表。

在我们这个例子中,让所有的选项都处于NO

建立快捷方式
应用程序快捷方式页可以让你在目标系统的桌面或者开始菜单为你的应用程序文件指定快捷方式。默认的,这个页面为安装项目包含的每一个可执行文件显示一个快捷方式;你可以删除这些,然后为你的安装项目中的其他文件添加快捷方式。

在这个例子中,保留页面默认的不变:在开始菜单中的Tutorial.exe 的快捷方式。

配置注册表数据
应用程序注册表页可以让你为应用程序的需求制定任意注册表项。

提示:一个 InstallScript 项目默认包含应用程序卸载键和键值和数据的脚本代码(在 HKEY_LOCAL_MACHINE or HKEY_CURRENT_USER 根键下的合适位置
Software/Microsoft/Windows/CurrentVersion/Uninstall/<GUID> );你不必再指定这些注册表项。
在这个例中,在本页不指定任何注册表项。注册表项会在第二步( Shortcuts and RegistryData )中被添加。

在安装协商中选择对话框样式
InstallationInterview 安装协商)页可以让你指定当最终用户运行安装程序时看到的对话框。在这个页面通过对你的询问, ProjectAssistant (项目助手) 在你的安装脚本中田间对应的对话框函数。脚本中关于对话框的变化将在第六步中加入。

在本例中,按照下列步骤:

1、"Do you want to display a License AgreementDialog?"(你想显示一个许可协议对话框吗?)的提示信息下面选择NO选项按钮。

2、 保留其他的选项按钮为YES

为你的安装选择语言


InstallationLocalization (安装过程本土化) 页面中可以指定安装过程中支持的语言。它也能指定字符串值和关联表示符,让你的安装程序更加轻松的按照你的终端用户所使用的其他语言而本土化。

在本例中,按照下列操作改变 HelpFiles 功能部件的显示名称:
1、 在列表框中选择 FeatureString Data
2、 在字符串表格的 Value 列,单击 HelpFiles (这个值关联着标识符IDS_FEATURE_DISPLAY_NAME2 ),把它变成Help Files ;多加一个空格。

编译安装程序

编译安装程序也可以让你指定你想发布的那种类型。

在本例中,按照下列步骤:
1、 选择 CD-ROM 选项
2、 单击 Build Installations

输出窗口打开,最主要的编译标签中显示编译过程的相关信息。当编译标签中显示"Buildf inished at date and time". 编译就完成了。

运行你的安装程序

要从IDE 环境中运行你的安装程序,单击 Run 工具栏按钮
或者按 Ctrl+F5.
安装程序显示你在通过 ProjectAssistant InstallationInterview 页设置的对话框。你通过 ProjectAssistant 输入的那些值在对应的对话框中显示给终端用户。例如,在运行时,你通过 ProjectAssistant TARGETDIR 指定的默认值出现在 ChooseDestination Location (选择目标位置) 对话框中。如果最终用户通过浏览确定了一个新的默认目标目录, TARGETDIR 将保存新的值

维护模式
当一个用户在他们的系统上第二次运行一个产品的安装程序,这个安装程序运行在 maintenancemode
(维护模式)。维护模式允许用户修改第一次安装时的功能部件,修复已经安装的功能部件或者删除整个程序。

卸载程序

要卸载程序,单击Run按钮或者按Ctrl+F5,然后选择Remove fromthe Setup Maintenance (在安装维护模式中删除)对话框,这样与当你从Add/Remove Programs 面板中选择应用程序的情况相同。


现在你已经建立了一个基本的安装项目,点击InstallationDesigner 展开标签,在教程的下一步中细化你的安装程序。


使用 InstallShield 设计界面工作
现在你已经建立了一个基本的安装项目,点击 InstallationDesigner 展开标签,在InstallShield 用户设计界面中细化你的项目。InstallShield 用户设计界面是在功能范畴上帮助你添加或编辑项目中的信息。教程中这个与以后的几个步骤将探索几个不同的InstallShield 视图。

完成这个步骤后你将了解到如何:
  • 为你的程序功能部件设置显示特性
  • 定义你的程序的安装类型
  • 建立构件并添加文件链接

设置功能部件特性

首先你将要设置你在Project Assistant,中创建的功能部件的附加特性,象这个功能部件的显示名称和描述。要编辑功能部件的特性,转到IDEFeatures 视图。


要显示Features 视图:

1、 如果在左侧窗格的控制树没有显示最高层的 Organization 节点,那么选择 View menu (视图菜单) 中的 View List (视图列表) 命令。
2、 打开 View List (视图列表) 中的 Organization 节点,显示它的子节点。
3、 单击 Features 子节点。
4、 Features 视图中,选择ProgramFiles 功能部件,把它的 Description (描述) 特性设置为 This feature contains the Tutorial App program files (这个功能部件包含 Tutorial App 的程序文件)

5、选择Help Files功能部件然后把它的Description特性改成Thisfeature contains the Tutorial App help files(这个功能部件包含Tutorial App的帮助文件)。当你输入了每一个描述,这个IDE就会创建一些表项,显示为{ID_STRINGn},用来表示这些赋值。

6、 Features 视图中把那些重名的功能部件重命名成各自的名称。要重命名一个功能部件,单击这个功能部件两次,让它的名字高亮显示,然后输入新的名称即可。

在安装程序运行时,如果最终用户选择了自定义安装类型,安装程序将显示一个对话框提示用户选择要安装那些功能部件。这个对话框中显示的功能部件的名称就是你刚才指定的名称和描述。

设置安装类型特性

安装类型是将要安装的功能部件的集合。一个典型的安装程序提供完整和自定义安装类型。完整安装类型安装所有功能部件,自定义安装类型将显示一个对话框让用户自己选择要安装的功能部件。
你可以在IDE 环境中的 Setup Types 视图中来修改安装类型特性。(在视图列表的Organization 下面

对于每一种安装类型,通过在对话框中选择功能部件的名称来确定将要安装的功能部件。
1、 对于Comp lete setup 类型,选择全部 features
2、 对于 Custom setup 类型,选择全部 features

创建构件和链接文件
你可以在 Files and Folders (文件和目录) 视图中添加附加文件链接。在这个步骤中,你将为HelpFiles 功能部件添加文件。当你在 Files andFolders 视图中添加文件时,IDE 环境将按照最优安装原则创建构件。

要为 Help Files 功能部件添加一个源文件为 Tutorial.html 新构件:
1、 转到 Files andFolders 视图(在视图列表中的 Application Data 节点下面)
2、 在功能部件列表视图顶部选择 Help Files

3、Destination computer's folders位置,右键单击Destination Computer 图标,确定已经选择了Show Components

4、 右键单击 ApplicationTarget Folder (应用程序目标目录)图标,然后选择 New Component (新构件)

5、重命名这个新构件为HelpComponent

6、 “Source computer's folders” 位置,浏览包含TutorialHelp.html 文件的源目录

7、“Source computer'sfiles”(源计算机文件)拖动TutorialHelp.html图标放到HelpComponent图标上


这些文件链接类型,构件链接的文件列表不会改变,这种类型叫做 static file linking (静态文件链接) 。要链接到一个包含子目录而且目录中的内容可能在编译时放生变化,请查看Dynamic FileLinking (动态文件链接)。

技巧:你可以使用InstallShield提供的依存关系扫描器来确定你的应用程序所需要的但却没有包含在项目文件中的文件。例如,Tutorial App 使用MFC,如果目标系统上没有安装MFC运行时,那么你必须在你的项目的Redistributables视图中添加MFC运行时对象。


教程的下一步将说明如何为你的安装项目编译一个发布映像。


编译发布程序

在测试一个安装程序之前,必须编译一个发布程序。一个发布映像包含将要通过CD-ROM 或者软盘或者网络位置发布的所有文件。

编译一个新的发布文件最简单的方法是使用ReleaseWizard(发布向导)。这个ReleaseWizard 可以让你配置版本的特性。象使用的的介质类型,在介质上如何压缩文件。你可以通过工具栏按钮或从Build菜单中运行ReleaseWizard


Welcome面板中点击NEXT指定发布设置。你可以在任意面板单击Help来获得当前步骤的更多信息。

命名发布


Specify a Release(配置发布)面板,指定发布的名称。这个发布名称用在你生成的发布文件的目录名。例如,建立一个新的发布叫做
cdrom

选择介质类型和常规选项


介质类型面板

Media Type 面板,你可以指定你编译发布文件所使用的介质类型。你指定介质类型指明了通过 ReleaseWizard 创建的磁盘映像文件夹的大小:当你选择编译一个CD-ROM 类型, ReleaseWizard 将把你的生成文件放到多个目录中,每一个目录不大于650MB

在本例中,选择CD-ROM


单击 Next 指定你的发布的常规选项。

常规选项面板
在常规选项面板中你可以完成下列内容:
  • 把你发布的安装程序,建立成自解压的可执行文件
  • Setup.exe传递命令行选项
  • 为编译器传递预处理变量定义
  • 选择是否将编译脚本文件(.inx 文件)放入压缩文件中。

在本例中,保持面板的默认设置不变。

指定密码和支持平台

密码面板
在密码面板,你可以为你的安装程序指定一个密码。如果你设置了密码,将执行OnCheckMediaPassword 事件句柄中的默认密码检测代码。

在本例中,不指定密码。

单击NEXT 指定你想要的支持当前版本的操作系统

在本例中,不改变默认的选择:"Use platforms specified by the Platforms projectproperty"(使用项目平台属性中指定的平台)


指定安装语言与包含功能部件


安装语言面板
在安装语言面板,你可以指定安装中可以使用的语言,并确定是否显示一个对话框允许当用户选择想安装中的使用的语言。
向导将只将你在面板中选择的语言编译到安装程序中,整个语言的独立资源象产品特性和编译操作,也必然包含在内。

在本例中,将默认的选择改为中文

功能部件面板
在功能部件面板,你可以指定编译发布包含那些功能部件。

在本例中,不更改默认选择:"Use the'Include in Build' feature property to determine inclusion".(使用Include in Build功能部件属性来确定包含内容)

定义介质规划和对话框外观


介质规划面板


在介质规划面板中,为单个功能部件或者所有功能部件,指定这些功能部件的文件是存放在压缩文件中或者放置在不压缩的磁盘中。

在本例中,保持默认的选择:"CabinetFile(s)".


用户界面面板

UserInterface (用户界面) 面板中,指定在安装中终端用户的对话框的感观。

在本例中,保留默认设置不变。

指定 Internet 选项和应用程序的数字签名

Internet 选项面板
Internet 选项面板,指定有关Internet 的多种选项。各种发布的版本不管它是通过什么介质的,都能通过Internet 运行。

在本例中,选择 Create adefault Web page for the setup (为安装创建一个默认 WEB 页) 保留其他的选择不变。

数字签名面板
在数字签名面板,你可以为你的应用程序打上数字标签。为你的应用程序打上数字标签能够确保你的程序代码在发布后不会被修改或破坏。

在本例中,保留默认的设置不变。

指定更新和编译后的信息
更新面板
更新面板可以让你为当前的能够运行更新的版本指定版本格式和现有的新版本。

在本例中,保留默认设置不变。

编译后选项面板

编译后选项面板( Post-BuildOptions )可以让你在发布编译完成后,复制磁盘映像到另外的一个目录,或者一个FTP 站点,或者执行一个批处理文件。

在本例中,保留默认设置不变。

检查你的设置

Summary (总结) 面板显示通过发布向导完成的当前设置。如果这个设置是正确的,选择 Build theRelease (编译发布) 选择框,然后单击完成,来编译发布。如果不正确,单击 Back 修改相关设置。

编译过程中的状态信息会在输出窗口中显示出来。

当编译完成后,准备拷贝的CD 上的文件放在下列目录中:
<ProjectFolder>/Tutorial/cdrom/DiskImages/DISK1

当你的项目在后面的步骤中发生改变后,你可以单击编译工具栏上的按钮,或者使用编译菜单中的编译命令,或者按F7 来重新编译最终版本。

现在你可以运行一下先前完成的安装程序。要象一个Internet 安装程序那样运行安装程序,单击工具栏上的 Open Release Folder 按钮,打开SETUP.HTM

教程下面的步骤中将说明如何为一个安装程序建立快捷方式和注册表数据。

安装程序故障诊断
在运行安装程序后,如果文件没有被安装,检查项目中的下列部分:
  • 通过选择IDE列表中的“Organize YourSetup”,找到GeneralInformation(常规信息)图标,选择ProductProperties(项目属性)来检查INSTALLDIR是否设置正确。
        在本例中,推荐值为 “[ProgramFilesFolder]TutorialCo/TutorialApp”.
  • 检查你的安装类型已经关联了相关的功能部件。
  • 检查你的功能部件中已经有关联的构件和文件。
  • 在做了任何修改后,应该通过点击Build 按钮或按F7键了重新编译项目。
缺少installscript引擎,请运行ISScript.msi(如果有的话)解决方案 2008-01-07 18:25:25| 分类: 计算机相关 |字号 订阅 “缺少计算机引擎installscript,请运行ISScript.msi(如果有的话)”这样的错误,在网上找了解决的方法,并且实验成功,在这里分享一下 ------------------------------------------------------------------------------------------------------------------------------------------------ 解决方法: ISScript.msi是安装补丁,安装文件必须要有的系统文件。 你可以用下述方法试一下 1、打开C:\Program Files\Common Files\InstallShield\Driver目录 2、删除目录中的其他目录 3、清空C:\Program Files\Common Files\InstallShield\Professional\RunTime\目录中的其他目录。 4、下载并按次序安装: http://support.installshield.com ... 2/IkernelUpdate.exe http://support.installshield.com/kb/files/Q108322/ISScript7x.zip http://support.installshield.com/kb/files/Q108322/ISScript8.zip http://support.installshield.com/kb/files/Q108322/ISScript10.zip http://support.installshield.com/kb/files/Q108322/ISScript101.zip http://support.installshield.com ... 22/ISScript1050.zip http://support.installshield.com/kb/files/Q108322/ISScript11.zip http://www.installengine.com/cert05/isengine/ISScript1150.Msi 5、完成后,在开始菜单运行中输入 services.msc 回车,选择自动执行Install Drive Table Manager服务,并开启。 ----------------------------------------------------------------------------------------------------------------------------------------------- OK,问题解决。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值