Installshield应用教程.docx
- 文档编号:12895730
- 上传时间:2023-04-22
- 格式:DOCX
- 页数:16
- 大小:462KB
Installshield应用教程.docx
《Installshield应用教程.docx》由会员分享,可在线阅读,更多相关《Installshield应用教程.docx(16页珍藏版)》请在冰豆网上搜索。
Installshield应用教程
Installshield应用教程
说明:
阅读对象:
本文档主要是对《installshield11.5简明试用教程》的补充,算是一个高手进阶吧,前面讲过的不再重复。
版本:
文中例子使用的是IS12,适用于IS10以上。
目的:
前段时间,工作中需要把公司的产品做一个安装程序,于是接触使用IS,不过在网上根本找不到IS的相关中文教程(~!
本人英语不太好)。
最后通过网上找到的零碎的教程,结合帮助文档和在一些朋友的帮助下,熟练掌握了IS,并将公司产品做成一键式安装,本文就是以这个为实例。
强调:
《installshield11.5简明试用教程》是在网上下载的,不是作者原创。
作者信息:
木禾
1.安装前执行2
2.安装到指定位置3
3.添加数据库及数据3
4.其他8
5参考脚本10
这里先说说实例的具体要求,再在后面逐个去解决这些问题,以说明IS各菜单功能。
这是一个J2EE构架的的系统,安装到服务器上使用。
知道J2EE的肯定知道,安装机器必备JDK,所以需要安装JDK;然后系统使用Tomcat服务器,所以需要安装Tomcat;然后安装主程序,这个过程其实就是把程序文件夹拷贝到Tomcat的wabapps文件夹下;然后安装数据文件和出示数据(数据库得由客户自行安装),最后在程序文件夹和桌面创建快捷方式。
一.安装前执行,要求先自动安装JDK和Tomcat。
切换到InstallationDesigner,
加入JDK和Tomcat的安装程序。
编辑脚本使安装执行后,先提示安装JDK,在安装Tomcat,以下是脚本片段
(图片有些模糊,文档最后附有例子的全部脚本供参考)
第15-20行,控制执行JDK安装,第22-26,安装Tomcat。
二。
安装到指定路径,把文件夹复制到Tomcat的wabapps文件夹下。
以上代码图片中,第29-34行,执行这一操作。
先从注册表读取tomcat的安装路径,在把文件夹复制到Tomcat的wabapps目录下。
三。
安装数据库及数据
这是直接把数据库转化成脚本,如果已有数据库脚本,只要右键——>New一个,再Importscriptfiles。
选择数据库和登录的验证方式。
选择数据库并给脚本命名(名字无所谓)
这上面几个选项应该看的懂吧,选择需要到处哪些表。
数据库有原始数据需要也写入脚本的话,就选上Recoeds
这里就是选数据库中主外键之类的,当然要选了。
这里设置安装安装过程中的提示,和脚本出现错误了是据需执行还是退出。
四。
其他
●快捷方式
Target默认是指向机器内的一个绝对地址,可以把InternetShortcut设置成YES,就可以在Target内设置网址指向地址。
●2对话框设置
可以选择安装程序,对话框的样式。
这里也可以自由编辑对话框。
●生成安装程序的模式
建议选上SigleExecutable,可以把所有的封装到一个exe文件内。
五。
参考脚本
//===========================================================================
//
//FileName:
Setup.rul
//
//Description:
Blanksetupmainscriptfile
//
//Comments:
Blanksetupisanemptysetupproject.Ifyouwantto
//createanewprojectvia.step-bystepinstructionsusethe
//ProjectAssistant.
//
//===========================================================================
//Includedheaderfiles----------------------------------------------------
#include"ifx.h"
//---------------------------------------------------------------------------
//OnFirstUIBefore
//
//FirstInstallUISequence-BeforeMoveData
//
//TheOnFirstUIBeforeeventiscalledbyOnShowUIwhenthesetupis
//runninginfirstinstallmode.BydefaultthiseventdisplaysUIallowing
//theendusertospecifyinstallationparameters.
//
//Note:
Thiseventwillnotbecalledautomaticallyina
//program...endprogramstylesetup.
//---------------------------------------------------------------------------
functionOnFirstUIBefore()
numbernResult,nLevel,nSize,nSetupType,nvSize,nType;
stringszTitle,szMsg,szOpt1,szOpt2,szLicenseFile;
stringszName,szCompany,szTargetPath,szDir,szFeatures,szTargetdir;
stringszJDK,svTomcat,szKey;
BOOLbLicenseAccepted;
begin
nSetupType=COMPLETE;
szDir=TARGETDIR;
szName="";
szCompany="";
bLicenseAccepted=FALSE;
szKey="";
nType=0;
svTomcat="";
szJDK="";
//BeginningofUISequence
Dlg_Start:
nResult=0;
Dlg_SdWelcome:
szTitle="";
szMsg="";
//{{IS_SCRIPT_TAG(Dlg_SdWelcome)
nResult=SdWelcome(szTitle,szMsg);
//}}IS_SCRIPT_TAG(Dlg_SdWelcome)
if(nResult=BACK)gotoDlg_Start;
Dlg_SdLicense2:
szTitle="";
szOpt1="";
szOpt2="";
//{{IS_SCRIPT_TAG(License_File_Path)
szLicenseFile=SUPPORTDIR^"License.rtf";
//}}IS_SCRIPT_TAG(License_File_Path)
//{{IS_SCRIPT_TAG(Dlg_SdLicense2)
//nResult=SdLicense2Rtf(szTitle,szOpt1,szOpt2,szLicenseFile,bLicenseAccepted);
//}}IS_SCRIPT_TAG(Dlg_SdLicense2)
if(nResult=BACK)then
gotoDlg_SdWelcome;
else
bLicenseAccepted=TRUE;
endif;
Dlg_SdRegisterUser:
szMsg="";
szTitle="";
//{{IS_SCRIPT_TAG(Dlg_SdRegisterUser)
nResult=SdRegisterUser(szTitle,szMsg,szName,szCompany);
//}}IS_SCRIPT_TAG(Dlg_SdRegisterUser)
if(nResult=BACK)gotoDlg_SdLicense2;
Dlg_SetupType2:
szTitle="";
szMsg="";
//{{IS_SCRIPT_TAG(Dlg_SetupType2)
//nResult=SetupType2(szTitle,szMsg,"",nSetupType,0);
//}}IS_SCRIPT_TAG(Dlg_SetupType2)
if(nResult=BACK)then
gotoDlg_SdRegisterUser;
else
nSetupType=nResult;
if(nSetupType!
=CUSTOM)then
szTargetPath=TARGETDIR;
nSize=0;
FeatureCompareSizeRequired(MEDIA,szTargetPath,nSize);
if(nSize!
=0)then
MessageBox(szSdStr_NotEnoughSpace,WARNING);
gotoDlg_SetupType2;
endif;
endif;
endif;
Dlg_SdAskDestPath2:
if((nResult=BACK)&&(nSetupType!
=CUSTOM))gotoDlg_SetupType2;
szTitle="";
szMsg="";
if(nSetupType=CUSTOM)then
//{{IS_SCRIPT_TAG(Dlg_SdAskDestPath2)
//nResult=SdAskDestPath2(szTitle,szMsg,szDir);
//}}IS_SCRIPT_TAG(Dlg_SdAskDestPath2)
TARGETDIR=szDir;
endif;
if(nResult=BACK)gotoDlg_SetupType2;
Dlg_SdFeatureTree:
if((nResult=BACK)&&(nSetupType!
=CUSTOM))gotoDlg_SdAskDestPath2;
szTitle="";
szMsg="";
szTargetdir=TARGETDIR;
szFeatures="";
nLevel=2;
if(nSetupType=CUSTOM)then
//{{IS_SCRIPT_TAG(Dlg_SdFeatureTree)
//nResult=SdFeatureTree(szTitle,szMsg,szTargetdir,szFeatures,nLevel);
//}}IS_SCRIPT_TAG(Dlg_SdFeatureTree)
if(nResult=BACK)gotoDlg_SdAskDestPath2;
endif;
//Displayamessageboxthatshowstheinformationicon.
MessageBox("接下来系统将安装JDK,\n如果系统在安装的过程中提示已经安装则取消即可。
\nJDK的版权归Sun公司所有...",INFORMATION);
szJDK=SUPPORTDIR^"jdk-1_5_0_06-windows-i586-p.exe";
if(LaunchAppAndWait(szJDK,"",WAIT)<0)then
MessageBox("不能加载程序"+szJDK+".",SEVERE);
endif;
MessageBox("接下来系统将安装Tomcat5.0...",INFORMATION);
szJDK=SUPPORTDIR^"jakarta-tomcat-5.0.28.exe";
if(LaunchAppAndWait(szJDK,"",WAIT)<0)then
MessageBox("不能加载程序"+szJDK+".",SEVERE);
endif;
//搜寻tomcat安装的路径
RegDBSetDefaultRoot(HKEY_LOCAL_MACHINE);
szKey="SOFTWARE\\ApacheSoftwareFoundation\\Tomcat\\5.0";
nType=REGDB_STRING;
svTomcat="";
//Getthelistofsubkeys.
if(RegDBGetKeyValueEx(szKey,"InstallPath",nType,svTomcat,nvSize)<0)then
MessageBox("查找Tomcat路径失败,系统不能继续安装",SEVERE);
return-1;
endif;
TARGETDIR=svTomcat+"\\webapps";
Dlg_SQLServer:
nResult=OnSQLServerInitialize(nResult);
if(nResult=BACK)gotoDlg_SdFeatureTree;
Dlg_ObjDialogs:
nResult=ShowObjWizardPages(nResult);
if(nResult=BACK)gotoDlg_SQLServer;
Dlg_SdStartCopy2:
szTitle="";
szMsg="";
//{{IS_SCRIPT_TAG(Dlg_SdStartCopy2)
nResult=SdStartCopy2(szTitle,szMsg);
//}}IS_SCRIPT_TAG(Dlg_SdStartCopy2)
if(nResult=BACK)gotoDlg_ObjDialogs;
return0;
end;
(本资料素材和资料部分来自网络,仅供参考。
请预览后才下载,期待您的好评与关注!
)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Installshield 应用 教程