`
- 浏览:
218950 次
- 性别:
- 来自:
北京
-
检测SQL的InstallShield脚本 通用于最新的 12
//全局变量
STRING szSQLServiceName; //数据库服务器名
STRING szSQLServiceName1; //数据库服务器名(缓存)
STRING szSQLServiceFilePath; //数据库服务器执行文件路径
STRING szSQLServiceDataRootPath; //数据库服务器数据库根路径
STRING szSQLServiceFileRootPath; //数据库服务器文件根路径
STRING szStartServiceArgs; //启动参数总和
STRING szSQLServiceRunData0 ; //数据库服务器启动参数1
STRING szSQLServiceRunData1 ; //数据库服务器启动参数2
STRING szSQLServiceRunData2 ; //数据库服务器启动参数3
NUMBER szServiceState; //数据库服务启动状态

//安装开始时检查
function OnBegin()
STRING szMsg;
STRING sKey,sKeyArg,sValue,sData;
STRING szKey;
NUMBER nType, nSize;
NUMBER nResult;
STRING szWaitTxt;
begin
if !MAINTENANCE then
SdShowMsg("正在检查软件运行环境...请稍候",TRUE);
Delay(1);
// 判断系统是否安装Microsoft SQL Server或MSDE
sKey = "Software\Microsoft\Microsoft SQL Server";
szMsg = "Micorsoft SQL Server 或 MSDE没有安装,请先安装Micorsoft SQL Server 或 MSDE.";
RegDBSetDefaultRoot(HKEY_LOCAL_MACHINE);
nResult = RegDBGetKeyValueEx ( sKey, "InstalledInstances", nType, sData, nSize );
if ( nResult < 0 )then
SdShowMsg("正在安装MSDE2000,请稍等...",TRUE);
Delay(1);
if(LaunchAppAndWait("msde\setup.exe", "",LAAW_OPTION_WAIT|LAAW_OPTION_MAXIMIZED)< 0) then
SdShowMsg("",FALSE);
MessageBox("安装MSDE2000失败,请手动执行安装光盘MSDE目录下的setup.exe安装MSDE2000引擎. 如仍无法解决,请联系系统供应商!",SEVERE);
abort;
endif;
endif;
//获取服务器名称
nResult=RegDBGetKeyValueEx( sKey, "InstalledInstances", nType, szSQLServiceName1, nSize );
if(nResult < 0) then
//MessageBox ("获取数据库服务器名称失败!",INFORMATION);
szSQLServiceName="MSSQL" ;
else
if(szSQLServiceName1="") then
szSQLServiceName="MSSQL";
elseif(szSQLServiceName1!="MSSQLSERVER") then
szSQLServiceName="MSSQL$"+szSQLServiceName1;
else
szSQLServiceName=szSQLServiceName1;
endif;
endif;
//获取数据库文件根路径
if(szSQLServiceName1!="MSSQLSERVER") then
sKey="Software\Microsoft\Microsoft SQL Server\"+szSQLServiceName1+"\Setup";
else
sKey="Software\Microsoft\"+szSQLServiceName1+"\MSSQLServer\Setup";
endif;
RegDBGetKeyValueEx( sKey, "SQLDataRoot", nType, szSQLServiceDataRootPath, nSize ); //数据库根路径
RegDBGetKeyValueEx( sKey, "SQLDataRoot", nType, szSQLServiceFileRootPath, nSize ); //文件根路径
//数据库启动文件路径
szSQLServiceFilePath=szSQLServiceFileRootPath+"\Binn\sqlservr.exe";
//获取数据库服务器启动参数
if(szSQLServiceName1!="MSSQLSERVER") then
sKeyArg="Software\Microsoft\Microsoft SQL Server\"+szSQLServiceName1+"\MSSQLServer\Parameters";
else
sKeyArg="Software\Microsoft\"+szSQLServiceName1+"\MSSQLServer\Parameters";
endif;
RegDBGetKeyValueEx( sKey, "SQLArg0", nType, szSQLServiceRunData0, nSize );
RegDBGetKeyValueEx( sKey, "SQLArg1", nType, szSQLServiceRunData1, nSize );
RegDBGetKeyValueEx( sKey, "SQLArg2", nType, szSQLServiceRunData2, nSize );
szStartServiceArgs=" -c "+ szSQLServiceRunData0 +" "+szSQLServiceRunData1+" "+szSQLServiceRunData2;
//检测数据库服务是否启动
if(ServiceGetServiceState(szSQLServiceName, szServiceState)< ISERR_SUCCESS) then
//加载
ServiceAddService (szSQLServiceName, szSQLServiceName, szSQLServiceName, szSQLServiceFilePath, TRUE,szStartServiceArgs);
endif;
//启动数据库服务
if (ServiceStartService(szSQLServiceName,"")< ISERR_SUCCESS ) then
SdShowMsg("",FALSE);
SetDialogTitle ( DLG_MSG_INFORMATION, "数据库服务启动出错" );
MessageBox("数据库服务"+szSQLServiceName+"启动错误!请手动开启数据库服务后再执行软件安装程序。如仍无法解决,请联系系统供应商!",INFORMATION);
abort;
endif;
endif;
end;
分享到:
Global site tag (gtag.js) - Google Analytics
相关推荐
INS:InstallShield安装脚本;X-Internet签字文件;Ensoniq EPS字簇设备;Cell/ⅡMAC/PC抽样设备 INT:中间代码,当一个源程序经过语法检查后编译产生一个可执行代码 IOF:Findit文档 IQY:Microsoft Internet...
少儿编程scratch项目源代码文件案例素材-纸人伙计.zip
scratch少儿编程逻辑思维游戏源码-忍者罗伊 V5.zip
scratch少儿编程逻辑思维游戏源码-跑和枪.zip
前端开发_基于jQuery和EasyUI框架_企业级Web应用UI组件库与后台管理系统模板_提供GPL开源版本和商业授权版本的双重授权模式_适用于快速构建响应式管理后台和复杂数据可
少儿编程scratch项目源代码文件案例素材-纸格通关 云变量.zip
微信机器人开发_Wechaty框架_百度云主机部署_自然语言处理_消息自动化处理_多媒体文件管理_聊天记录持久化_表情包导出_语音视频自动保存_文件管理系统集成_跨平台数据同步_个
少儿编程scratch项目源代码文件案例素材-钻机机器人.zip
少儿编程scratch项目源代码文件案例素材-作战基地.zip
云计算_微服务分布式架构SpringCloudSpringBootDubboVuejs_互联网云快速开发框架敏捷开发系统代码生成工作流CMS图表统计地图统计_免费开源JAVA企业
scratch少儿编程逻辑思维游戏源码-日落塔.zip
Tobapuww_GPT-Recovery-Files_12888_1745866661386
少儿编程scratch项目源代码文件案例素材-战斗竞技场.zip
scratch少儿编程逻辑思维游戏源码-球球大作战.zip
聚合支付系统/官方个人免签系统/三方支付系统稳定安全高并发 附教程 系统采用FastAdmin框架独立全新开发,安全稳定,系统支持代理、商户、码商等业务逻辑。 针对最近一些JD,TB等业务定制,子账号业务逻辑API 非常详细,方便内置对接! IP白名单 业务逻辑 支持IP白名单,黑名单,全局白名单,全局黑名单,保障系统的安全。 接口验签名 采用支付宝RSA加密接口方式,防止篡改数据,导致对账困难,资金大量损失,无故少钱 对接灵活 全部对接参数灵活操作 风控完善 轮询、交易金额、随机金额、最大金额、最小金额等 测试环境: Nginx+PHP7.0+MySQL5.6 网站运行目录:/public 伪静态设置为:thinkphp规则 数据库信息修改路径:/application/database.php
校园社交服务_微信小程序云开发_公告资讯失物招领二手交易兼职招聘表白墙_为高校师生提供一站式校园生活服务平台包含校园动态通知课程表查询失物发布与认领二手物品交易平台兼职信息发布与求
yinghuayu2377_myFTPDemo_32152_1745866651913
scratch少儿编程逻辑思维游戏源码-魔法球.zip
idea导入个人风格
少儿编程scratch项目源代码文件案例素材-找袜子.zip