一 问题的提出 目前的很多数据库应用程序是使用ORACLE数据库开发的client/server模式 众所周知 使用此种模式需要在终端上安装ORACLE
客户端软件 应用程序可以使用InstallShield软件打包成安装程序 由用户自行安装 但ORACLE客户端软件一般需要有经验的开发人员通过人机交互让山的方法安装 安装完成后还需在Net 中配置服务名 这样当软件发布时 可能需要在不同地点的成千上万个终端上安装ORACLE客户端 让费了大量的人力及时间 如何能在不需要人员干预的情况自动完成ORACLE客户端的安装及配置工作 是否能将此工作集成到应用程序的安装中去? 答案是肯定的 下面逐步阐述实现的过程 二 实现步骤 共享ORACLE安装程序 可将ORACLE安装程序放置到一台应用服务器的光驱或拷贝到应用服务器的一个目录下并共享 在这里我们假定服务器名称为softserver 放置路径为oracle 编写响应
文件自动安装ORACLE客户端 ORACLE的缺省的安装模式为人机交互方式 即运行ORACLE安装盘上的setup exe后 按照安装程序的提示一步一步的选择完成安装 ORACLE同时也提供了自动安装(非人机交互)方式 此种模式的前提是必须写一个响应文件 关于此种方式的说明可以在ORACLE安装盘中找洞滑备到 文件名为doc\Output\ 在response目录下有一些响应文件的模板 可以根据需要将模板修改成适合自己的响应文件 在这里我们举一个只安装Net 的例子 文件名定为\\softserver\oracle\net rsp 内容如下 [General] RESPONSEFILE_VERSION= [SESSION] #products jar文件所在的路径(在ORACLE安装盘中) 纳毁 FROM_LOCATION= \\softserver\oracle\stage\products jar #ORACLE安装目录 ORACLE_HOME= C:\oracle\ora #ORACLE安装目录的别名 ORACLE_HOME_NAME= ora #顶级安装方式 这里选择客户端 TOPLEVEL_PONENT={ oracle client } #是否显示动画 缺省为false SHOW_SPLASH_SCREEN=false #是否显示欢迎界面 缺省为false SHOW_WELE_PAGE=false #是否显示安装过程界面 缺省为true SHOW_INSTALL_PROGRESS_PAGE=false #是否显示需求信息 缺省为true SHOW_REQUIRED_CONFIG_TOOL_PAGE=false # #ORACLE客户端
选项 # [oracle client_ ] #语言 这里用英语 简体中文 PONENT_LANGUAGES={ en zh_CN } #安装方式(缺省 定制 最小) 这里用定制 INSTALL_TYPE= Custom #要安装的产品列表 这里选择Net DEPENDENCY_LIST={ cltprod } # #Net 产品 # [cltprod_ ] DEPENDENCY_LIST={ clt } # # Net 配置助手 # [ca_ ] #是否在安装后启动Net 配置助手 缺省为true b_launchNETCA=false 此时 如果我们在命令行执行命令 \\softserver\oracle\setup –responsefile \\softserver\oracle\net rsp –silent 则安装程序在后台自动安装 过一段时间(十多分钟 视机器配置和网络速度而定)后 我们可以在程序菜单中看到ORACLE的菜单 里面只有Net 安装路径为C:\oracle\ora 编写Net 配置文件 最简单的方法是用Net Assistant来生成 配置好所需的服务后 到ORACLE安装目录的neork\ADMIN路径下找到tnsnames ora文件即可 文件格式为 # TNSNAMES ORA Neork Configuration File: c:\Oracle\Ora \NEORK\ADMIN\tnsnames ora # Generated by Oracle configuration tools ORA = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = )(PORT = )) ) (CONNECT_DATA = (SERVICE_NAME = bigsun) ) ) 将此文件拷贝到\\softserver\oracle\目录中去 编写执行程序 可以使用各种方式编写可执行程序 VB程序等执行以下功能 a)自动安装Net \\softserver\oracle\setup –responsefile \\softserver\oracle\net rsp –silent b)拷贝Net 配置文件配置服务命名 copy \\softserver\oracle\tnsnames ora c:\oracle\ora \neork\ADMIN 将可执行程序打包到安装程序中 以InstallShield为例 在Custom Actions中添加新动作后 在File Name栏选择上一步中编写的执行程序 此时 我们的目的已经达到 这样 在进行应用程序的安装时 ORACLE客户端软件的安装及配置工作将隐式的同时进行 安装工作完成后 应用程序就可以直接运行 而无须安装或配置ORACLE客户端 lishixinzhi/Article/program/Oracle/201311/17114
我个人认为,先把要集成的软件提取成绿色版本,然后在将其打包成.msi文件,在安装时做一个批处理(批处理也可以编译成.exe文件,有个小工具可以做到你网上找一下)调用msiexec.exe(用于安装Windows Installer安装包MSI)来拆包安装,可以配合以下参数来实现你想要的功能。
msiexec /Option <Required Parameter>[Optional Parameter]
安装选项
</package | /i><Product.msi>
安装或配置产品
/a <Product.msi>
管理安装 - 在网络上安装产品
/j<u|m><Product.msi>[/t <Transform List>] [/g <Language ID>]
播发产品 - m 播发到所有用户,u 播发到当前用户
</uninstall | /x><Product.msi | ProductCode>
卸载产品
显示选项
/quiet
安静模式,无用户交互
/passive
无从参与模式 - 只显示进程栏
/q[n|b|r|f]
设置用户界面级别
n - 无用氏迹键户界面
b - 基本界面
r - 精简界面
f - 完整界面(默认值)
/help
帮助信息
重新启动选项
/norestart
安装完成后不重新启动
/promptrestart
提示用户重新启动(如果必要)
/forcerestart
安装后总是重新启动计算机
日志选项
/l[i|w|e|a|r|u|c|m|o|p|v|x|+|!|*] <LogFile>
i - 状态消息
w - 非致命警告
e - 全部错误消息
a - *** 作的启动
r - *** 作特定记州行录
u - 用户歼巧请求
c - 初始界面参数
m - 内存不足或致命退出信息
o - 磁盘空间不足消息
p - 终端属性
v - 详细输出
x - 额外调试信息
+ - 扩展到现有日志文件
! - 每一行刷新到日志
* - 记录所有信息,除了 v 和 x 选项
/log <LogFile>
与 /l* <LogFile>相同
更新选项
/update <Update1.msp>[Update2.msp]
应用更新
/uninstall <PatchCodeGuid>[Update2.msp] /package <Product.msi | ProductCode>
删除产品的更新
修复选项
/f[p|e|c|m|s|o|d|a|u|v] <Product.msi | ProductCode>
修复产品
p - 仅当文件丢失时
o - 如果文件丢失或安装了更旧的版本(默认值)
e - 如果文件丢失或安装了相同或更旧的版本
d - 如果文件丢失或安装了不同版本
c - 如果文件丢失或较验和与计算的值不匹配
a - 强制重新安装所有文件
u - 所有必要的用户特定注册表项(默认值)
m - 所有必要的计算机特定注册表项(默认值)
s - 所有现有的快键方式(默认值)
v - 从源运行并缓存本地数据包
设置公共属性
[PROPERTY=PropertyValue]
请查阅 Windows (R) Installer SDK 获得有关
命令行语法的其他文档。
搞不懂你用的是什么软件
制作启动光盘本身UltraISO + EasyBoot基本就足够了。
集成常用软件?直接扔到你的镜像中不就OK了么?当然目录要层次分明。
常用软件清磨集成到PE中更答哪斗好。
PE的iso文件当然不能直接扔到你制作的那个iso中,需要解包把里面的文件放在你的镜像里,再添加启动项。
速度的问题,一开始我也认为“车开得慢才会更稳”,后来发缓雀现,实际上从没见过高速刻录出问题的,只要不超过光盘的参数。
评论列表(0条)