IS制作Oracle 静默安装包Word格式文档下载.docx

上传人:b****7 文档编号:22598158 上传时间:2023-02-04 格式:DOCX 页数:28 大小:4.97MB
下载 相关 举报
IS制作Oracle 静默安装包Word格式文档下载.docx_第1页
第1页 / 共28页
IS制作Oracle 静默安装包Word格式文档下载.docx_第2页
第2页 / 共28页
IS制作Oracle 静默安装包Word格式文档下载.docx_第3页
第3页 / 共28页
IS制作Oracle 静默安装包Word格式文档下载.docx_第4页
第4页 / 共28页
IS制作Oracle 静默安装包Word格式文档下载.docx_第5页
第5页 / 共28页
点击查看更多>>
下载资源
资源描述

IS制作Oracle 静默安装包Word格式文档下载.docx

《IS制作Oracle 静默安装包Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《IS制作Oracle 静默安装包Word格式文档下载.docx(28页珍藏版)》请在冰豆网上搜索。

IS制作Oracle 静默安装包Word格式文档下载.docx

脚本中的路径应该以实际的

数据路径为准。

3.导入文件zgisexp.dmp和zproexp.dmp。

把此脚本存为CMD文件,直接执行即可。

脚本中的路径应该为实际dmp文件存放的路径。

另外此脚本为本单位的数据信息,

可不作为参考!

创建用户、表空间脚本:

制作带基础数据的模板

有了以上的数据,我们就开始制作数据的模板,以便建库的时候使用。

1.创建数据库模板

2.创建好后,我们会在<

ORACLE_HOME>

\assistants\dbca\templates\目录中,发现如下两个模板

文件。

temp_10g.dbctemp_10.dfb

此处两个文件的作用是,按照数据库模板的形式创建数据库,无需在导入表,创建

用户和导入基础数据。

这一步,先在已有的Oracle环境下完成。

我们拷贝这两个文

件即可。

3.修改temp_10g.dbc

安装脚本描述

在进行Oracle安装过程中,需要安装程序调用以下的脚本,以实现Oracle的安装过程。

1.Install.cmd安装Oracle软件脚本

执行此脚本时,需要带以上的参数,具体参数后边会有说明。

2.copynetca.cmd拷贝监听文件和模板文件,并创建监听服务脚本。

Ø

脚本中存在两个接收的变量,这个是从IS中传出来的路径参数,必须存在。

另外,模

板文件必须拷贝到指定的路径下,<

Oracle_Home>

\assistants\dbca\templates。

3.createDB.cmd创建带模板数据的数据库脚本。

此脚本用于根据数据模板创建数据库,命令带如下的参数:

4.unlock.bat用户解锁脚本

安装模板生成的数据库,其用户状态为锁定,需要执行解锁脚本。

其中change.sql为:

集合Oracle安装脚本

以上的4个脚本是安装过程必备的4个脚本,我们现在整理为一个批处理文件install.bat,

以便我们在制作安装包的时候调用该批处理。

根据上述脚本的参数类型,我们把参数补完整。

脚本中存在一个接收的环境变量%DATABASEDIR%,这是由IS运行此程序带出来的参

数,此参数为安装的目标路径。

%SOURPATH%这个参数虽然没有在BAT文件中有任何的接收说明,但是在执行安装

过程中,IS会创建该参数在BAT文件头端,该参数为目标源路径地址。

如何在IS中自

动创建该变量,在第三部份中说明。

以上的脚本分别调用了上边的4个脚本,他们后边均带有参数。

Ok,现在已经完成了Oracle方面的设置,我们需要保留的文件为1+4个批处理文件、1个.SQL

文件和两个模板文件。

这些文件将会在IS或安装中被调用。

卸载脚本描述

1.deinstall.cmd卸载oracle软件,该脚本的参数如下:

2.completeClean.cmd清除相关文件和设置,该脚本的相关参数如下:

集合卸载脚本

以上两个脚本为卸载数据库所用,我们把他集合为一个批处理,以方便IS调用。

该脚本中依然存在%DATABASEDIR%和%SOURPATH%两个参数。

作用同install.bat

第三部分:

使用IS2009

向导设置

1.打开InstallShield2009,新建一个Installscript.MSIProject,建议选择此工程,因为该工

程支持脚本编写。

选择类型为WindowsInstaller>

InstallScript.MSIProjcet

2.进入IS向导设置界面,下面我们分别进行设置。

下图为ApplicationInformation页面

3.点击导航,进入InstallationArchitecture页面,选择YES设置软件组件结构。

Files为安

装文件,Database为数据库文件。

4.点击导航,进入ApplicationFiles页面,设置安装目标文件夹,并且在database文件夹

下添加如下文件。

安装设计

1.在向导设置中进行简单操作后,进入安装设计标签页面。

2.在基本设置页面查看安装目录和语言设置

3.在Organization–>

Features中设置安装路径,以及其他的设置。

下图为Files的设置

下图为Database的设置,注意目标路径为[INSTALLDIR]Database,该文件夹是在Files文件夹

下的目录。

请设置好OnInstalling、OnInstalled、OnUninstalling、OnUnistalled选项。

该选项允许用

户指定和调用相关的InstallScripe函数。

后边我们在IS中的脚本编程中将讲到如何在这些

函数中写代码。

4.用户也可以在ApplicationData->

FilesandFolders中查看或添加修改文件。

5.在Behavior.andLogic—>

SupportFiles/Billboards中的Disk1下添加需要安装包支持的文件

和文件夹。

Win32文件夹是存放基础脚本的文件夹;

database文件夹是Oracle的安装文件夹;

Temp_10G.dbc和Temp_10G.dfb为建库模板文件。

以上步骤完成了IS中的基本设置和安装设置,只要是目录结构的选择,Files文件夹是

安装程序文件的文件夹,它的参数是[INSTALLDIR]。

它的目录下是Database文件夹。

参数

是[INSTALLDIR]Database。

另外注意,3个脚本文件必须放在指定的文件夹位置,这关系

到脚本语言中的相互调用。

支持文件将存放在光盘的跟目录下,这给我们直接调用这些文件带来了方便。

第四部分:

IS2009中的脚本编程

传递源路径参数

用户在使用IS安装过程中,我们不能够将所有信息都复制到本地硬盘进行安装,通常

情况下会读取源盘上的一些信息,譬如光盘下的某个路径中的内容。

但是如何获取安装的路

径信息呢?

又如何让批处理文件获知这些内容呢?

这里我们用到IS函数库中的3个函数:

BatchAdd(添加一个环境变量到一个批处理文件)

BatchFileLoad(把一个批处理文件装入内存来用高级批处理函数编辑它)

BatchFileSave(保存一个由BatchFileLoad装入的批处理文件)

BatchAdd函数插入一个SET命令或其它DOS命令到一个已经由BatchFileLoad装入内

存的批处理文件中。

参数nOptions使你可以将新命令添加到文件的第一个或最后一个语句,

用新命令取代一个现存语句,或指定将新命令添加到一个现存语句的前面或后面。

调用

BatchAdd前,你必须调用BatchFileLoad来把要修改的文件装入内存。

在你修改该文件后,

调用BatchFileSave来把它保存到磁盘。

下面我们在IS2009中去使用这些函数。

1.在InstallationDesigner中选择IS左边栏的Behavior.andLogic中的InstallScript。

2.在脚本框的上方,下拉选择框,选择Files

3.之后,选择右边的下拉框,选择Installed

之所以选择Installed,是因为安装过程中会把Install.bat批处理脚本复制到本地硬盘,

只有在成功复制之后,我们才能调用该批处理脚本,使用这些函数。

如图所示:

Installed函数中的具体脚本如下:

#defineEXAMPLE_BATINSTALLDIR^"

Database\\install.bat"

#defineEXAMPLE_BAK"

install.bak"

exportprototypeDefaultFeature_Installed();

functionDefaultFeature_Installed()

STRINGTARG,SOURCE,TARG1;

STRINGDBPATH,DATA,DATAsur,TITLE;

begin

//Loadthebatchfiletobeedited.

if(BatchFileLoad(EXAMPLE_BAT)<

0)then

MessageBox("

Unabletoload"

+EXAMPLE_BAT+"

."

SEVERE);

abort;

endif;

DBPATH=SRCDISK+"

\\"

;

//AddthelineSETPATH=SRCDISK+"

\\”.

if(BatchAdd("

SOURPATH"

DBPATH,"

"

BEFORE)<

SecondcalltoBatchAddfailed"

WARNING);

//Savetheupdatedfile;

backuptheoriginalfile.

if(BatchFileSave(EXAMPLE_BAK)<

Unabletosave"

+EXAMPLE_BAK+"

//else

//MessageBox("

Batchfilesaved.Backupcreated."

INFORMATION);

该脚本中,我们定义Install.bat的安装路径,并且在开始处用BatchFileLoad函数调用它,

注意,该调用并不是执行它,而是在内存中临时调用。

然后设置一个变量DBPATH=SRCDISK

+"

,SRCDISK是IS判断Setup.inx所在的位置,取出安装盘符,当然我们后边要加上反斜

杠。

譬如光盘在F:

我们这样做的目的就是在批处理的第一行插入SetSOURPATH=F:

\。

BatchAdd函数用于加载这个变量,保证在该批处理文件中最开始就设置这一变量。

最后使

用BatchFileSave保存批处理文件。

同样,在卸载时候我们同样需要在Deinstall.bat中这样去做,只是位置要确定在

Uninstalling,并且定义deinstall.bat的安装路径即可。

UnInstalling函数中的具体脚本如下:

#defineUNINSTALL_BATINSTALLDIR^"

Database\\deinstall.bat"

#defineUNINSTALL_BAK"

deinstall.bak"

exportprototypeDefaultFeature_UnInstalling();

functionDefaultFeature_UnInstalling()

STRINGTARG,SOURCE;

if(BatchFileLoad(UNINSTALL_BAT)<

.

if(BatchFileSave(UNINSTALL_BAK)<

+UNINSTALL_BAK+"

执行批处理文件

我们修改完批处理文件,就要在修改保存之后执行它。

这需要用到Is函数库中的

LaunchAppAndWait()函数

语法:

LaunchAppAndWait(szProgram,szCmdLine,lWait);

说明:

LaunchAppAndWait函数运行由szProgram指定的带有szCmdLine指定的命令行

参数的应用程序。

第三个参数,lWait指示安装在继续前是否要等待直到运行的应用程序终

止。

一个安装程序只能监控由szProgram指定的应用程序;

如果该应用程序要运行其它应

用程序或进程,安装程序不能监控它们。

因此,安装程序将在第一个应用程序结束后继续,

即使那时由第一个应用程序运行的其它应用程序仍在运行。

注意如果运行的应用程序终止失

败,则安装程序将无限等待运行的应用程序完成。

添加在Installed脚本的后面:

TARG=INSTALLDIR^"

Database"

if(LaunchAppAndWait(INSTALLDIR^"

TARG,LAAW_OPTION_WAIT|

LAAW_OPTION_HIDDEN)<

Unabletolaunchinstall.bat"

SEVERE);

end;

LAAW_OPTION_HIDDEN这个参数是隐藏bat的执行窗口,它与

LAAW_OPTION_WAIT并用是隐藏并且等待程序执行完成后返回,注意他们的前后顺序。

添加在UnInstalling脚本的后面:

if

(LaunchAppAndWait(INSTALLDIR^"

Unabletolaunchdeinstall.bat"

脚本已经完成,我们编译脚本,并确定没有任何的问题。

第五部分:

其他

修改界面风格

1.在InstallationDesigner中选择IS左边栏的UserInterface中的Dialogs

2.在右边窗口中选择Skins,选择之后点击Select

3.界面窗口风格改变

编译打包

1.在InstallationDesigner中选择IS左边栏的Media中的Realrases

2.在右边栏Releases点击右键,选择ReleasesWizard…

3.出现向导界面

4.在该界面中,注意几个界面,其余均为默认

5.FilterSetting界面,不要做任何的选择

6.MediaType界面,选择NetworkImage

该地点不要选择过滤!

默认即可,若选择,导致读取光盘1158问题!

上图为错误图

完整的安装包文件

第六部分:

遇到的问题

1158问题:

过滤语言操作导致,不选择过滤项即可

中文输入乱码问题:

在向导中进行中文输入即可

环境变量问题:

由于IS提供设置环境变量的功能,先开始认为在IS中设置环境变量就可以

通过bat去读取,但是这样做是错误的,变量是可以添加成功,但不允许该次的调用,所以

放弃了这种方法,改用函数。

设计思路问题:

先开始是创建新库,并分别导入表,创建用户,导入数据,这样做麻烦的要

死,参数问题不断。

后来改用数据模板建库。

目录问题:

开始是这样打算的,把文件和数据库用不同的目录区分开,UI中出现两个路径

选择页面,可是IS中只提供一个安装INSTALLDIR的目录的参数,另外一个目录路径我不

知道如何获取和调用。

故采用在INSTALLDIR目录下又创建了Database文件夹。

第七部分:

总结

本人第一次使用IS,走了不少弯路,先开始用ISExpress版本,发现根本无法使用脚本,改

成IS09,由于对Oracle的不熟悉,批处理的不熟悉,IS编程语言的不熟悉,导致此次制作

过程颇为漫长。

零零散散历时一个多月的时间。

这里要感谢IS群的帮助,是他们给我前进的动力。

问题一一排除,最终做好产品,提交Oracle。

特别感谢,海洋女神,奕婷,Blue,宇心,csp等等。

以上全部内容仅仅包含ORACLE的打包,公司的产品应用并没有放在其中。

IS群19622645空白制作QQ:

28021418

部分源代码

exportprototypeNew_Feature_Installing();

functionNew_Feature_Installing()

//---------------------------------------------------------------------------

//TheInstallingeventissentbeforethefeatureDefaultFeature

//isinstalled.

exportprototypeDefaultFeature_Installing();

functionDefaultFeature_Installing()

STRINGdiskpath,szCommand,szCmdLine,szCommandecp,szCmdLineecp;

diskpath=SRCDISK+"

//定义安装盘路径

//运行framework20安装程序

if(LaunchAppAndWait(SRCDIR^"

supportfiles\\dotnetfx.exe"

"

LAAW_OPTION_WAIT/*|

LAAW_OPTION_HIDDEN*/)<

Unabletolaunchdotnet"

(LaunchAppAndWait(SRCDIR^"

supportfiles\\framwork2.0\\setup.exe"

LAAW_OPTION_WAIT/*

|

Unabletolaunchdotnet2"

//定义MSI文件参数及MSI文件位置

szCommand=WINSYSDIR^"

msiexec.exe"

LongPathToShortPath(szCommand);

szCmdLine=SRCDIR^"

supportfiles\\EngineRT\\setup.msi"

LongPathToShortPath(szCmdLine);

//运行MSI文件

if(LaunchAppAndWait(szCommand,"

/i"

+szCmdLine,LAAW_OPTION_WAIT)<

UnabletolaunchACGIS"

//szCommandecp=SRCDIR^"

supportfiles\\SoftwareAuthorization.exe"

//LongPathToShortPath(szCommandecp);

//szCmdLineecp=SRCDIR^"

supportfiles\\license.ecp"

//LongPathToShortPath(szCmdLineecp);

supportfiles\\Runecp.bat"

diskpath,LAAW_OPTION_WAIT/*

Unabletolaunchecp"

//TheInstalledeventissentafterthefeatureDefaultFeature

//-------------------------------------------------------------------------

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 人文社科 > 视频讲堂

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1