安装iexplore.exe应用程序错误

iexplore.exe应用程序错误  时间:2021-05-19  阅读:()
88软件技术2005年I1月J0日第ll期用InstallShield搭建应用软件运i5t]iii|一北京邮电大学计算机科学与技术学院余宝娟潘维民摘要:制作一个智能化的安装程序发行软件是项目开发的重要组成部分.
良好的安装程序不仅要完成基拳的程序和数据文件的拷皿厦相关蛆件的注册,还要能完成第=方软件的静态安装、设置环境变量、修改配置文件和安装系统服务等I作本文通过一个央倒着重讨论了使用lnstallShield实现应用软件运行环境的自动配置方法关键词:InstailShield;静态安装;第=方软件;运行环境;自动配置对于Win&)WS应用软件.
一叶、方便、交互的安装程序是不可缺少的特别是当软件运行环境搭建复杂的情况下,若所有丁作能在安装程序中能-次性完成.
仅给用户甜F一个良好的第印象,同时也有效地提高可靠r,降低维护成本.
安装程序制作的复杂是山应用软件的复杂度决定的应用软件可能『列时,f】到多种开发丁.
具.
如VC++、Delphililtlihler、MSXM1分析器以及后台数据库系统等这样.
软件的运行环境中.
Delphi丌发的数据库应用程J半就需要BDE数据库引擎;jBuilder的Web应用程序需要Weh服务器:VC++井发的c()M组件、DLI等需癸进行注册;以及安装MSXML和数据库仞始化等lnslallShield是一个强有,J的安装程序制作软件,面过其强大的脚本语言编程可在安装程序中完成诸如第三方软件静忿安裟,注册文件没环境变量和安装系统服务等等复杂的操作功能的慢大往往带米实现的复杂、本文通过一个实例讨沧r如何使用Tmta[IShil·I搭建应用软件运行环境文叶1实例为基于数据仓库技术的银行非现场稽枝监控系统+分为服务器版和窨户端版本字户端版本与服务器版制作过程类似,因此本文服务器版奉为例使用的lnstallshild为Prolein7.
0版乖舀'先.
通过hastalIShiehl的向导创建一个新的工程_本文是庄此基础上则其修改和编程.
完成虚用软件复杂运行j境的搭建一、实例运行环境配置车实例的安装前提条件是,服务器操作系统为windo~sN一1servt4.
0或更高版本、数据库为Mj一osoflsQL_2000.
待安装的具体内容包括:Web应川程序,Delphi应用程序:注册COM组件、I)LI静态安装.
1ava开发包JDKI4、wEB服务器T…ll1.
at5、数据昨引擎bde5lB【lria…tDataIⅢcEngi)、msxml4;设置环境变康、修改置文件,数据仓库初始化;安装系统服务等IJJ于篇幅的原因,软件的司】载就不再介绍r二、修改s(~tup.
rul文件luslallshield安装程序由㈣II_l¨JI文件中的丽数OnFirstUIHefore¨负责对安装程序进行仞始化,从而扶取川户安装信息其代码下:(J确定宦装的1]标日录:在默认情况下,I¨mIIshield会在默认安装路径中添J=『¨公司名称.
此时nT以通过修改TARGEqDIl束最终确定奠装路径N()V1r).
2IO5N()http://www.
paper.
edu.
cn中国科技论文在线坪如金骷越肛FINANCIALCOMPUTEROf''HUANAN软件技术2005年11月10日第11期(二)、窗口标题与提示信息的修改:在默认情况下,Installshield会根据项目名称生成相应的窗口标题和提示信息.
如果这些与我们所要求的不相符时,就可以通过修改szMsg、szTitle这两个变量完成.
(三)、注册码的处理:如果需要在安装程序中校验软件注册码,则需要调用SdRegisterUserEx函数向用户询问软件注册码.
否则调用SdRegisterUser函数只询问用户的基本信息.
(四)、确认磁盘可用空间:检查目标磁盘的可用空间满足安装需要,具体代码如下:GetDisk(TARGETDIR,SVDrive);1FreeSpace:GetDiskSpace(svDrive).
至此,安装程序主要初始化工作基本完成.
三、文件组设置与文件注册主应用程序的文件数量大且目录结构复杂.
为了将其方便快速的加到文件组里,采用了动态连接(DynamicLinks)方式.
选中文件组,双击文件组连接方式,在弹出的设置页面:指定文件所在目录;选中IncludeSubfold;InclusionWildCard(s)设为六.
六,ExclusionWildCard(S)设为空.
这样,该目录下的所有文件加入到该文件组中.
另外,Insta11Shield提供了文件组文件自动注册功能,将需要注册的COM组件和DLL(动态链接库)文件设为一个文件组进行统一注册.
四、静态安装第三方软件第三方软件由于其功能强大、性能稳定、使用方便,越来越多的用于软件开发和使用中.
它们的静态安装方式由制作软件和打包格式决定,下面就几种典型情况进行讨论.
(一)、静态安装JDK组件SUN公司JDK1.
4.
2的安装程序是采用In—stallshield打包制作,由两部分组成:i2re.
MSI和i2sdk142.
MSI.
msi格式的安装文件通过Win—dowsInstaller来完成安装.
i2sdk142.
MSI的安装与i2re.
MSI相似,下面以i2re.
msi为例说明.
首先设置静态安装命令参数:Sprintf(szCmd—Line,"/i\,,%S\,,INSTALLDIR=\,,%S\\j2re\,,REBOOT=SuppressADDLOCAL=ALL/qb!
一".
J2RE,szPath).
其中变量szCmdLine为静态安装的命令参数,包括源程序所在路径,安装目标路径,是否重启机器等;宏J2RE定义为:SRCDIRbin、\j2sdk142.
MSI";变量szPath表示安装的目标路径.
然后调用WindowsInstaller完成安装:nResult:LaunchAppAndWait(MSIEXEC,szCmdLine,WAIT).
函数LaunchAppAndWait的功能是加载安装程序.
参数:宏MSIEXEC定义为:WINSYSDIR~msiex.
ec.
exe";变量szCmdLine为前面设置的命令参数;WAIT表示LaunchAppWait函数等待安装完成后才返回.
变量nResult为函数返回的执行结果,0:成功,<0:失败.
(二)、静态安装Tomcat组件Tomcat4的安装程序采用NSIS(NullsoftScript—ableInstallationSystem)打包制作,静态安装实现比较简单.
首先设置命令参数:Sprintf(szCmdLine,"/S/D=%S\\tomcat",TARGETDIR).
其中变量szCmdLine为静态安装的命令参数:"/S"表示安装方式为静态安装,"/D:%S\\tomcat"表示安装目录;宏TARGETDIR表示用户指定的目标路径.
然后进行静态安装:nResult=LaunchAp—pAndWait(TOMCAT,szCmdLine,WAIT).
其中函数参数:宏TOMCAT定义为:SRCDIRbin\\tom—cat一4.
0.
4.
exe";变量szCmdLine为前面设置的命令参数;其他同4.
1.
(三)、安装BDEBDE5的安装程序采用的是Insta11Shield打包制作,文件格式为EXE,静态安装需要有相应的静态安装脚本Setup.
iss作支持.
Setup.
iss可以通过安装程序使用"/R"参数生成.
相比之下,这种静态安装的功能灵活、强大.
静态安装具体实现代码:nResult=LaunchAp.
pAndWait(BDE,"/S",WAIT).
其中函数参数:宏BDE定义为:SRCDIRbin\\bde5\\SETUP.
EXE";"/S"为静态安装的命令参数;其他请参照"静态安装JDK组件"小节.
此时,安装程序所需要的输入参数将由静态安装脚本文件给出.
需要注意的是,在静态安装BDE5之前应该根据用户所选择的安装目录,修改安装脚本中的安装目录设置.
N0V.
10.
2005NO.
11软件技术2005年11月10日第11期坪扔金骷电肛五、配置软件运行环境(一)、设置环境变量本实例采用T0MCAT作为wEB服务器,需要设置PATH、JAVA』{0ME和CLASSH0ME环境变量.
JAVA_H0ME和cLAssH0ME一般是JDK专有的环境变量,所以直接在注册表里添加或覆盖已有的值.
PATH是系统已存在的环境变量,所以首先得到该环境变量的值,然后判断是否已经含有要添加的值,没有则在该值中添加并重新设置PATH值,若已有则取消操作.
下面以设置CLASSPATH变量为例,具体代码如下:szKey=SYSTEM||CurrentControlSet||Control||SessionManager\\Environment":szPath=TARGETDIR;nSize=一1:strsub(jdkDir,TARGETDIR,0,3);jdkDir=jdkDir~'\\programfiles";nType=REGDBSTRINGEXPAND;RegDBGetKyValueEx(szKey,"PATH",nType,szValue,nSize);Sprintf(szEnv.
"%S\\JDK131\\bin;%S\\apache—ant—1.
5.
2\\bin;%S\\jawin\\bin;".
jdkDir,szPath,szPath);if(!
(szValue%szEnv))thenszValueszEnvszValue;nResuh=RgDBSetKeyValueEx(szKey,"PATH",nType,SZ—Value,nSize);if(nResuh<0)thenMessageBox("FailedtoAppendPathEnvironmentVariable!
",WARNING);endif;endif;(二)、修改配置文件Web应用程序需要根据实际安装环境修改配置文件内容.
较简单的实现:第一步,安装前处理配置文件,删除需要修改的信息;第二步,InstallShield安装过程中动态添加配置信息.
具体代码为:FileIn—sertLine(szPath,szCmdLine,9,AFTER);函数FileIn—sertLine的功能是向文件中插入一行.
参数szPath指向待修改文件及其路径;szCmdLine为插入的内容;数字9为在第几行插入;AFTER为插入方式.
(三)、导人注册表文件当往注册表里写的内容很多,可以编写一个注册表文件,然后通过安装第三方软件的方式将该文件内容一次性写入注册表,实现起来更简单,不易出错.
这时InstallShield需要调用系统的regedit.
exe实现静态安装.
具体实现代码为:regFileDir=TARGETDIRregfiles\\LookupDateGap.
reg":Sprintf(szCmd,/s%s\,,,,regFileDir);szPath=WINDIRregedit.
exe;nResuh=LaunchAppAndWait(szPath,szCmd,WAIT);(四)、注册文件虽然InstallShild提供了文件的自动注册功能,但是某些情况下通过编码实现一个文件的注册也是常见的.
具体实现代码为:saDir=TARGETDIR~'SaGSA.
dll":Sprintf(szCmd.
"/s\"%s.
saDir);nResuh=LaunchApp(regsvr32.
exe,szCmd);(五)、数据仓库初始化数据仓库的初始化工作比较复杂,本实例中包括获取元数据库、标准数据源和监控服务器的配置信息,并根据配置信息建立数据库服务器连接、创建数据库、表,导人元数据等等操作.
为了降低安装程序制作的复杂性,首先用VC编程实现上述功能,然后InstallShield轻松调用该程序即可.
具体代码为;nResult=LaunchAppAndWait(INITDB,,WAIT);函数参数:宏INITDB为数据库初始化程序,定义为:SRCDIRin\\InitDB.
exe".
(六)、安装系统服务软件中的系统服务需要将其安装到系统中,通过本地服务控制台中进行启动、暂停和停止等操作.
如本实例中的ETL数据抽取和任务执行,通过编写系统服务来实现定期的调度执行.
具体实现代码如F:nResult=LaunchAppAndWait(AuditService.
/一service",WAIT).
其中函数参数AuditService为服务文件名称及其路径,定义为:TARGETDIRAuditService.
exe";"/一service"表示将该软件安装成系统服务.
六、结束语本文通过一个实例,讨论了InstallShild如何实现复杂运行环境的自动搭建,希望能起到一定的借鉴作用.
上述方法在实际应用中均能正确运行.
参考文献:[1】BobBaker.
TheOfficialInstallShieldforWindowsInstaUerDevel0per'SGuide[M.
NYU.
S.
A:HungryMinds,Incorpo2rated,January2001:100—102[2】JeffreyM.
Rhodes.
InstallShieldProfes—sionalPrimerforToolBookInstaUati0ns[3】http://WW-vV.
installshield.
COB(责任编辑:高鹏志)N0V.
10.
2005NO.
11

美得云(20元)香港特价将军澳CTG+CN2云服务器

美得云成立于2021年,是一家云产品管理服务商(cloud)专业提供云计算服务、DDOS防护、网络安全服务、国内海外数据中心托管租用等业务、20000+用户的选择,43800+小时稳定运行香港特价将军澳CTG+CN2云服务器、采用高端CPU 优质CN2路线 SDD硬盘。香港CTG+CN22核2G3M20G数据盘25元点击购买香港CTG+CN2​2核2G5M30G数据盘39元点击购买香港CTG+CN...

HostKvm(4.25美)香港和俄罗斯高防机房云服务器

HostKvm 商家我们算是比较熟悉的国内商家,商家主要还是提供以亚洲数据中心,以及直连海外线路的服务商。这次商家有新增香港和俄罗斯两个机房的高防服务器方案。默认提供30GB防御,且目前半价优惠至4.25美元起步,其他方案的VPS主机还是正常的八折优惠。我们看看优惠活动。香港和俄罗斯半价优惠:2021fall,限购100台。通用优惠码:2021 ,八折优惠全部VPS。我们看看具体的套餐。1、香港高...

RAKsmart:美国圣何塞服务器限量秒杀$30/月起;美国/韩国/日本站群服务器每月189美元起

RAKsmart怎么样?RAKsmart是一家由华人运营的国外主机商,提供的产品包括独立服务器租用和VPS等,可选数据中心包括美国加州圣何塞、洛杉矶、中国香港、韩国、日本、荷兰等国家和地区数据中心(部分自营),支持使用PayPal、支付宝等付款方式,网站可选中文网页,提供中文客服支持。本月商家继续提供每日限量秒杀服务器月付30.62美元起,除了常规服务器外,商家美国/韩国/日本站群服务器、1-10...

iexplore.exe应用程序错误为你推荐
互联网周鸿祎之路android孩子apple支持ipadipad上网新买的ipad怎么用。什么装程序 怎么上网x-router设置路由器是我的上网设置是x怎么弄win7如何关闭445端口如何关闭WIN7自动配置 IPV4 地址 169.254xp关闭445端口Windows XP系统 关闭445端口后无法上网,求解?google中国地图强大的谷歌地图,为什么中国不用起来谷歌sb为什么百度一搜SB是谷歌,谷歌一搜SB是百度?
1g虚拟主机 北京主机租用 域名空间购买 godaddy域名解析教程 美国主机排名 duniu a2hosting 全球付 idc评测网 payoneer 火车票抢票攻略 tk域名 jsp空间 ntfs格式分区 域名接入 东莞数据中心 cdn加速是什么 双12 登陆空间 空间登陆首页 更多