| //===========================================================================//// File Name: Setup.rul//// Description: Blank setup main script file//// Comments: Blank setup is an empty setup project. If you want to// create a new project via. step-by step instructions use the// Project Assistant.////===========================================================================
// Included header files ----------------------------------------------------#include "ifx.h"//#include "functions.rul" //引入自定义函数string ip,user,pwd;
//--------------------------------------------------------------------------- // OnFirstUIBefore//// First Install UI Sequence - Before Move Data//// The OnFirstUIBefore event is called by OnShowUI when the setup is// running in first install mode. By default this event displays UI allowing// the end user to specify installation parameters.//// Note: This event will not be called automatically in a// program...endprogram style setup.//---------------------------------------------------------------------------function OnFirstUIBefore() number nResult, nLevel, nSize, nSetupType; string szTitle, szMsg, szOpt1, szOpt2, szLicenseFile; string szName, szCompany, szTargetPath, szDir, szFeatures; BOOL bLicenseAccepted; string zzJdk,zzTomcat,pathTomcat,svvalue,xmlpath; //自定义 NUMBER nType, nvSize; //自定义begin nSetupType = COMPLETE; // szDir = TARGETDIR; // szName = ""; //szCompany = ""; bLicenseAccepted = FALSE; szDir="c:\\"; szName = "rcom"; szCompany = "rcom"; zzJdk="SOFTWARE\\JavaSoft\\Java Runtime Environment\\1.5"; zzTomcat="SOFTWARE\\Apache Software Foundation\\Tomcat\\5.0"; pathTomcat=""; // Beginning of UI Sequence
Dlg_zzb: //查找注册表看jdk,tomcat是否安装
RegDBSetDefaultRoot(HKEY_LOCAL_MACHINE); if(RegDBKeyExist(zzJdk)!=1) then MessageBox("先安装jdk",SEVERE); abort; endif; nType = REGDB_STRING;
if(RegDBKeyExist(zzTomcat)!=1) then MessageBox("先安装tomcat",SEVERE); abort; else RegDBGetKeyValueEx(zzTomcat, "InstallPath", nType, svvalue,nvSize); pathTomcat=svvalue; endif; TARGETDIR=pathTomcat+"\\webapps"; //将项目安装到指定的目录 if (Is(FILE_EXISTS, pathTomcat+"\\common\\endorsed\\xml-apis.jar")) then DeleteFile (pathTomcat+"\\common\\endorsed\\xml-apis.jar"); //将删除Tomcat目录下的多余的jar // DeleteFile (pathTomcat+"\\common\\endorsed\\xml-apis.jar"); //将删除Tomcat目录下的多余的jar endif; CopyFile(SRCDIR^"\\server.xml",pathTomcat+"\\conf\\server.xml");//拷贝server.xml文件到tomcat下面 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) goto Dlg_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 goto Dlg_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) goto Dlg_SdLicense2; // Dlg_SdInitDs: // nResult=initDataSource(); //录入web连接信息 // if (nResult = -1) goto Dlg_SdInitDs; //if (nResult = BACK) goto Dlg_SdRegisterUser; Dlg_SetupType2: szTitle = ""; szMsg = ""; nResult = CUSTOM; //{{IS_SCRIPT_TAG(Dlg_SetupType2) nResult = SetupType2( szTitle, szMsg, "", nSetupType, 0 ); //}}IS_SCRIPT_TAG(Dlg_SetupType2) if (nResult = BACK) then goto Dlg_SdRegisterUser; else nSetupType = nResult; if (nSetupType != CUSTOM) then szTargetPath = TARGETDIR; nSize = 0; FeatureCompareSizeRequired( MEDIA, szTargetPath, nSize ); if (nSize != 0) then MessageBox( szSdStr_NotEnoughSpace, WARNING ); goto Dlg_SetupType2; endif; endif; endif;
Dlg_SdAskDestPath2: if ((nResult = BACK) && (nSetupType != CUSTOM)) goto Dlg_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) goto Dlg_SetupType2;
Dlg_SdFeatureTree: if ((nResult = BACK) && (nSetupType != CUSTOM)) goto Dlg_SdAskDestPath2; szTitle = ""; szMsg = ""; szFeatures = ""; nLevel = 2; if (nSetupType = CUSTOM) then //{{IS_SCRIPT_TAG(Dlg_SdFeatureTree) nResult = SdFeatureTree( szTitle, szMsg, TARGETDIR, szFeatures, nLevel ); //}}IS_SCRIPT_TAG(Dlg_SdFeatureTree) if (nResult = BACK) goto Dlg_SdAskDestPath2; endif;
Dlg_SQLServer: nResult = OnSQLServerInitialize( nResult ); if( nResult = BACK ) goto Dlg_SdFeatureTree;
Dlg_ObjDialogs: nResult = ShowObjWizardPages( nResult ); if (nResult = BACK) goto Dlg_SQLServer; Dlg_SdStartCopy2: szTitle = ""; szMsg = ""; //{{IS_SCRIPT_TAG(Dlg_SdStartCopy2) nResult = SdStartCopy2( szTitle, szMsg ); //}}IS_SCRIPT_TAG(Dlg_SdStartCopy2) if (nResult = BACK) goto Dlg_ObjDialogs;
// Added in 11.0 - Set appropriate StatusEx static text. SetStatusExStaticText( SdLoadString( IDS_IFX_STATUSEX_STATICTEXT_FIRSTUI ) ); return 0;end;
|