zoukankan      html  css  js  c++  java
  • 一键式安装.Net FrameWork,MSDE,Web安装程序,Windows安装程序,还原数据库文件,注册表导入

    何为"一键式安装"? 我的解释就是,运行安装程序的时候,把.Net FrameWork、Sql Server(MSDE)、Web应用程序、其它安装文件、注册表修改、数据库还原等操作一次安装完成,不需要客户做其它任何操作,而且安装过程中不用客户做任何操作,系统自动替代用户操作,比如装.Net FrameWork时候的"许可协议"安装文件正常自动处理.
    原理就是用批处理来操作,具体代码如下.
     1@echo 开始安装,请等待……
     2"tools\WindowsInstaller" /quiet /norestart
     3Goto SetupMsde
     4
     5:SetupMsde
     6    cd MSDE
     7        Setup
     8    cd..
     9        "tools/sc" config MSSQLSERVER start = auto
    10        "tools/sc" start MSSQLSERVER
    11Goto SetupFrameWork
    12
    13:SetupFrameWork
    14    cd Framework
    15        InStall /Q
    16    cd..
    17Goto RegImport
    18
    19:RegImport
    20    cd tools
    21        reg IMPORT IESettings.reg
    22    cd..
    23Goto SetupPrograme
    24
    25:SetupPrograme
    26    cd Web
    27        Setup /passive
    28    cd..
    29    cd WebService
    30        Setup /passive
    31    cd..
    32    cd client
    33        Setup /passive
    34    cd..
    35Goto Next
    36
    37:Next
    38    Copy "tools\DB.bak" "C:\Program Files"
    39    Copy "tools\restore.sql" "C:\Program Files"
    40    If Not Exist "c:\GYYJB_DATA\MSSQL" Goto CreateDataFolder
    41Goto DelBackDataFile
    42    
    43:CreateDataFolder
    44    C:
    45        If not Exist "c:\GYYJB_DATA" Goto CreateGYYJB_DATA
    46Goto CreateMSSQL
    47        
    48:CreateGYYJB_DATA
    49    MD "C:\GYYJB_DATA"
    50Goto CreateMSSQL
    51
    52:CreateMSSQL
    53    MD "C:\GYYJB_DATA\MSSQL"
    54Goto DelBackDataFile
    55
    56:DelBackDataFile
    57    Del /Q "c:\GYYJB_DATA\MSSQL"
    58Goto BackDataBase
    59
    60:BackDataBase
    61    osql.exe /Usa /PGYYJB /dmaster /i "C:\Program Files/restore.sql"
    62    del "C:\Program Files\DB.BAK"
    63    DEL "C:\Program Files\restore.sql"
    64Goto RegIISClient
    65
    66:RegIISClient
    67    c:
    68    cd\
    69    cd C:\WINNT\Microsoft.NET\Framework\v1.1.4322
    70    aspnet_regiis -c
    71    cd\
    72    cd C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322
    73    aspnet_regiis -c
    74Goto ExitSetup
    75
    76:ExitSetup
    77    @echo 安装成功,感谢您使用远程教育管理系统
    78

    解释如下:
    1、"tools\WindowsInstaller" 
            "tools"是我建立的一个工具夹文件,目的是在不能自动更新的Windows 2000系统上安装也能正常运行.
    2、"tools\WindowsInstaller" /quiet /norestart.  
            在Tools文件夹下可以找到WindowsInstaller3.1.Exe这个可执行文件, /quiet 参数表示静态安装,/norestart表示安装完毕后系统不重启.
    3、 cd MSDE Setup cd.. 
            进入MSDE安装文件夹里面安装数据库文件
    4、"tools/sc" config MSSQLSERVER start = auto
          "tools/sc" start MSSQLSERVER
            还是去"tools"这里找到sc.exe, 首先设置 MSSQLSERVER的配置文件为自动启动,然后马上启动起来 MSSQLSERVER 服务,目的是以后好还原数据库文件.
    5、cd Framework   InStall /Q  cd..
            进入.Net FrameWork文件夹安装.Net FrameWork,InStall为解压后的主安装文件,/Q参数表示静态安装,不需客户参与.
    6、cd tools  reg IMPORT IESettings.reg cd..
            还是去"tools"这里找到reg.exe, 将IESettings.reg 这个注册表导出文件导进当前安装的计算机注册表里面.
    7、cd Web Setup /passive cd..
            安装Web安装程序,参数 /passive 表示静态安装,不需客户参与.
    8、If Not Exist "c:\GYYJB_DATA\MSSQL" Goto CreateDataFolder
            这是数据库要恢复到的文件,不存在就创建,存在则恢复数据库.
    9、osql.exe /Usa /PGYYJB /dmaster /i "C:\Program Files/restore.sql"
            利用命令行工具 osql.exe 还原数据库.参数/Usa:用户名sa,/PGYYJB :密码GYYJB
    参数"C:\Program Files/restore.sql" :还原数据库的Sql脚本.
    10、cd C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322 aspnet_regiis -c 
            重新注册一下客户端脚本
     下面是我还原数据库用的脚本
     1use master        
     2if not exists(select * from sysdatabases  where name = 'GYYJB')
     3    begin 
     4        create database GYYJB
     5    end        
     6if exists(select * from sysdevices where name = 'DBdisk')
     7    begin
     8        exec     sp_dropdevice 'DBdisk'
     9    end
    10else 
    11    begin
    12        exec sp_addumpdevice 'disk','DBdisk','DB.bak'
    13    end
    14    restore database GYYJB from disk='C:\Program Files\DB.bak' 
    15        with move 'GYYJB_Data' to 'c:\GYYJB_DATA\MSSQL\GYYJB_Data.mdf ',
    16        move 'GYYJB_Log' to 'c:\GYYJB_DATA\MSSQL\GYYJB_Log.Ldf'
    17
    其它说明
    1、WindowsInstaller.Exe作用,未联网的Windows 2000用户的WindowsInstaller的版本应该是3.0以下,所以不支持上面写的几个安装参数,所以安装此文件更新到3.1.
    2、Sc.exe作用,Sql Serser服务管理.Windows 2000 默认不安装此程序,在Windows 2000随机安装盘可以找到.XP,Windows 2003自带.
    3、Reg.exe作用,注册表服务管理.Windows 2000 默认不安装此程序,在Windows 2000随机安装盘可以找到.XP,Windows 2003自带.
    4、aspnet_regiis -c  当系统先装.Net FrameWork后装IIS时,缺少验证脚本等,重注册一下就可以.
    5、到网上找个BAT编译成EXE文件的工具,如BATfoEXE,就可以做成一个漂亮的安装引导文件.
    6、这时你可以看到一个基于命令行窗口安装程序,如果你想要一个有Windows窗体的安装程序怎么办呢?到网上随便找一个MSI制作工具就OK了.,例如InstallShield 等等
    7、MSDE先安装,数据库文件后还原的问题.安装完数据库后,启动数据库服务(异步过程),需要几秒的时间,所以将数据库还原放到最后面.
    8、删除数据库文件的问题,安装过程中如果原来还原的数据库文件存在,则新还原数据库操作,只创建数据库文件,并不能覆盖还原数据库文件,所以需要删除原来的数据库文件.
    posted on 2006-07-11 14:05 帅哥烦恼多 阅读(2320) 评论(19)  编辑 收藏 引用 网摘

    FeedBack:
    # re: 一键式安装.Net FrameWork,MSDE,Web安装程序,普通安装程序,还原数据库文件
    2006-07-11 16:27 | 随风随云
    传说中的第一个沙发 绝对处女沙发哟~~  回复  更多评论
      
    # re: 一键式安装.Net FrameWork,MSDE,Web安装程序,普通安装程序,还原数据库文件
    2006-07-11 16:27 | jyfnet
    好, 客户就是上帝!  回复  更多评论
      
    # re: 一键式安装.Net FrameWork,MSDE,Web安装程序,普通安装程序,还原数据库文件
    2006-07-11 17:17 | ξσ Dicky σξ
    8错  回复  更多评论
      
    # re: 一键式安装.Net FrameWork,MSDE,Web安装程序,普通安装程序,还原数据库文件
    2006-07-11 17:21 | 想啥有啥
    我要博客
      回复  更多评论
      
    # re: 一键式安装.Net FrameWork,MSDE,Web安装程序,普通安装程序,还原数据库文件
    2006-07-11 17:58 | 高海东
    不错   回复  更多评论
      
    # re: 一键式安装.Net FrameWork,MSDE,Web安装程序,普通安装程序,还原数据库文件
    2006-07-11 19:52 | U2U
    不错,但是容错性不是能否保证  回复  更多评论
      
    # re: 一键式安装.Net FrameWork,MSDE,Web安装程序,普通安装程序,还原数据库文件,注册表导入
    2006-07-11 22:13 | Beginor
    请问楼主,如果中途出错该怎么办呢?  回复  更多评论
      
    # re: 一键式安装.Net FrameWork,MSDE,Web安装程序,普通安装程序,还原数据库文件,注册表导入
    2006-07-12 07:28 | 兰亭
    思路不错  回复  更多评论
      
    # re: 一键式安装.Net FrameWork,MSDE,Web安装程序,普通安装程序,还原数据库文件,注册表导入
    2006-07-12 08:54 | 帅哥烦恼多
    @Beginor
    其实就和你手动装.Net FrameWork,MSSQL,Other,一样,出错了你就重新装载其中一个,而现在你就要重新运行这个打包后的安装程序.安装过程中比如.Net FrameWork,Web应用程序会自动采用"修复"的,所以问题不是很大,而且保持住了速度.  回复  更多评论
      
    # re: 一键式安装.Net FrameWork,MSDE,Web安装程序,普通安装程序,还原数据库文件,注册表导入
    2006-07-12 08:55 | 帅哥烦恼多
    @U2U
    容错性确实是个问题,没仔细研究批处理里面有没有错误处理~  回复  更多评论
      
    # re: 一键式安装.Net FrameWork,MSDE,Web安装程序,普通安装程序,还原数据库文件,注册表导入
    2006-07-12 08:59 | fiesta
    为什么不用installshield来作安装包呢?  回复  更多评论
      
    # re: 一键式安装.Net FrameWork,MSDE,Web安装程序,Windows安装程序,还原数据库文件,注册表导入
    2006-07-12 09:01 | 帅哥烦恼多
    @fiesta
    5555555~~~,我不会用installshield.而且问题是比如装.Net FrameWork的时候"许可协议"系统将自动处理,不需客户手动选择安装  回复  更多评论
      
    # re: 一键式安装.Net FrameWork,MSDE,Web安装程序,Windows安装程序,还原数据库文件,注册表导入
    2006-07-12 10:08 | 发芽的豆子
    呵呵,好啊。  回复  更多评论
      
    # re: 一键式安装.Net FrameWork,MSDE,Web安装程序,Windows安装程序,还原数据库文件,注册表导入
    2006-07-12 10:25 | Fufu
    感觉不错。 学习中。  回复  更多评论
      
    # re: 一键式安装.Net FrameWork,MSDE,Web安装程序,Windows安装程序,还原数据库文件,注册表导入
    2006-07-12 14:55 | Cure
    其实批处理是很值得研究的,不过现在的开发使用越来越少了,我一般用来写自己开发中用的一些小功能。  回复  更多评论
      
    # 一键式安装.Net FrameWork,MSDE,Web安装程序,Windows安装程序,还原数据库文件,注册表导入 [TrackBack]
    2006-07-13 08:54 | james.dong
    来自:http://peopleyl.cnblogs.com/archive/2006/07/11/447997.html何为  查看原文  回复  更多评论
      
    # re: 一键式安装.Net FrameWork,MSDE,Web安装程序,Windows安装程序,还原数据库文件,注册表导入
    2006-07-13 09:00 | fiesta
    @Cure
    批处理确实很强大,只是我们大部分人都不会用,没有用好:)  回复  更多评论
      
    # 一键式安装.Net FrameWork,MSDE,Web安装程序,Windows安装程序,还原数据库文件,注册表导入 [TrackBack]
    2006-07-20 15:56 | xiaomaoxia
    一键式安装.Net FrameWork,MSDE,Web安装程序,Windows安装程序,还原数据库文件,注册表导入   查看原文  回复  更多评论
      
    # re: 一键式安装.Net FrameWork,MSDE,Web安装程序,Windows安装程序,还原数据库文件,注册表导入
    2006-09-25 21:39 | qxiuying
    aGFAJKV AKGSEKJG  回复  更多评论
  • 相关阅读:
    第二次个人作业
    软件工程第一次个人作业
    2020软件工程最后一次作业
    软件工程团队作业第一阶段
    软件工程第四次作业
    软件工程第一次结对作业
    软件工程第二次作业
    软件工程最后一次作业
    软件工程第四次作业
    2020软件工程第三次作业
  • 原文地址:https://www.cnblogs.com/King0502/p/2019282.html
Copyright © 2011-2022 走看看