使用Setup Factory 8.0 打包软件,安装时自动创建数据库


1、设置项目属性


   点此出现如下对话框:


2、添加需要打包的文件,并设置安装目录


3、安装过程设置


 点此出现以下对话框

安装前(Before Installing),安装中(While Installing),安装后(After Installing)的设置


此处重点讲如何在安装后自动创建数据库

在“(After Installing)”中添加Progress Bars

可在settings中设置说明文字


在Actions-On Start中设置执行创建数据库文件的语句。


-- These actions are performed when the screen is shown.


-- Note: this is normally where you would put the actions
--       that you want this screen to perform (i.e. the
--       actions that you want to show the progress of).


-- Tip: use the DlgProgressBar actions (such as SetRange,
-- SetPos and Step) to make the progress bars reflect
-- the current status of your actions.
local AppFolder =File.GetShortName( SessionVar.Get("%AppFolder%"));
local ProductVer = SessionVar.Get("%ProductVer%");
local Version= SessionVar.Get("%VersionType%");
DlgProgressBar.SetPos(CTRL_PROGRESS_BAR_01, 30);
local Params=String.Concat(AppFolder,"");
      Params=String.Concat(Params," ");
      Params=String.Concat(Params,ProductVer);
      Params=String.Concat(Params," ");
      Params=String.Concat(Params,Version);
      DlgProgressBar.SetPos(CTRL_PROGRESS_BAR_01, 50);
      File.Run("%AppFolder%\\Data\\CreateDatabase_BW_SMS.bat", Params, "", SW_MINIMIZE, true);   

     --执行安装路径Data文件夹下的CreateDatabase_BW_SMS.bat文件,传入 Params参数,就是开始属性;里面设置的参数
 DlgProgressBar.SetPos(CTRL_PROGRESS_BAR_01, 100);


注意:File.Run("%AppFolder%\\Data\\CreateDatabase_BW_SMS.bat", Params, "", SW_MINIMIZE, true);   这句要执行,必须在安装目录Data文件夹下面存放以下三个文件。


4、CreateDatabase_BW_SMS.bat文件的内容

@echo off
rem %1 为路径参数; 要还原的数据库备份.bak文件存放的目录
rem %2 为版本号;如 6.1.2 ;
rem %3 为版本;  为“标准版”或“多探头版” 

echo 正在启动SQL SERVER服务...
net start mssqlserver

echo 正在创建数据库,请稍等...
osql -E /Q "IF Not Exists (SELECT name FROM master.dbo.sysdatabases WHERE name = N'BW_SMS') RESTORE DATABASE BW_SMS FROM DISK ='%1\Data\BW_SMS_V%2%3' WITH MOVE 'BW_SMS_Data' TO '%1\Data\BW_SMS.mdf',MOVE 'BW_SMS_log' TO '%1\Data\BW_SMS.ldf'"

rem echo 正在启动SQL代理...
rem net start sqlserveragent

echo 正在更新SQL脚本...
osql -E -i %1\Data\BW_SMS_V%2%3.sql
echo 数据库创建成功!


备注:创建数据库的语句,传入参数后应该为

osql -E /Q "IF Not Exists (SELECT name FROM master.dbo.sysdatabases WHERE name = N'BW_SMS') 

RESTORE DATABASE BW_SMS FROM DISK ='C:\Program Files\日报管理系统\Data\BW_SMS_V1.0.0标准版' WITH 

MOVE 'BW_SMS_Data' TO 'C:\Program Files\日报管理系统\Data\BW_SMS.mdf',

MOVE 'BW_SMS_log' TO 'C:\Program Files\日报管理系统\Data\BW_SMS.ldf'"




评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值