继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

网站安装打包 软件环境检测与安装

喵喵一只汪
关注TA
已关注
手记 315
粉丝 86
获赞 467

这一节主要说安装!

1。操作系统

这个应该不用了,没系统也没法运行了!

2。IIS安装

这个是重点,最后面介绍!

3。framework安装

这个也不用了,工具安装时会先检测,如果没安装这工具也打不开了!

4。RAR安装

这个可以通过调用RAR的安装文件启动安装。

代码简单的就一句话:Process.Start(“RAR的安装软件路径”);

 

 



以下重点介绍IIS的自动安装

 

IIS的自动安装也很简单,先说下原理,再说下步骤:

原理:通过调用Sysocmgr.exe系统自带的工具安装,主要参数为:"/i:sysoc.inf /u:\"这里是iis.txt文件路径\""

这里的参数没有iis安装文件的路径,那路径是在哪里指定的?答:路径就在注册表里指定了

注册表路径为:Machine\SOFTWARE\Microsoft\Windows\CurrentVersion\Setup

这下面有两个键:SourcePath和ServicePackSourcePath即为路径

所以,运行Sysocmgr.exe之前,

一.是要先配置好iis.txt文件,

二.是要先改注册表路径。

三.是运行Sysocmgr.exe

四.是把注册表改回去

 

主要步骤如下:

一:新建一个txt文件,把IIS要装的组件,按如下格式编写:

[Components]
iis_common = ON
iis_www = ON
iis_asp = ON
iis_inetmgr = ON
aspnet= ON

----------------保存成iis.txt即可。里面的组件其它组件名称,可以通过查看iis6.0的帮助文档找到!

二、三、四步,直接给出代码出下:

 

IIS安装


          /// <summary>
          /// 安装IIS
          /// </summary>
          /// <param name="installPath">iis386文件夹路径</param>
          /// <param name="iisTxt">即存放安装组件的文本路径</param>
          /// <param name="errMsg">返回的错误信息</param>
          /// <returns></returns>
          public static bool Install(string installPath, string iisTxt,out string errMsg)
          {
              errMsg = "";
              RegistryKey key = Registry.LocalMachine.OpenSubKey(@"SOFTWARE\Microsoft\Windows\CurrentVersion\Setup",true);
              if (key == null) { return false; }
              string sourcePath = Convert.ToString(key.GetValue("SourcePath"));
              string servicePackSourcePath = Convert.ToString(key.GetValue("ServicePackSourcePath"));

              try
              {

                  key.SetValue("ServicePackSourcePath", installPath);
                  key.SetValue("SourcePath", installPath);

                  Process rarPro = new Process();
                  rarPro.StartInfo.FileName = "Sysocmgr.exe";
                  rarPro.StartInfo.Arguments = string.Format("/i:sysoc.inf /u:\"{0}\"", iisTxt);
                  rarPro.StartInfo.UseShellExecute = false;
                  rarPro.StartInfo.CreateNoWindow = false;
                  rarPro.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
                  rarPro.Start();//开始  
                  rarPro.WaitForExit();//等待退出
                  rarPro.Dispose();
                  return true;
              }
              catch (Exception err) { errMsg = err.Message; }
              finally
              {
                  key.SetValue("ServicePackSourcePath", servicePackSourcePath);
                  key.SetValue("SourcePath", sourcePath);
              }
              return false;
          }

 

打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP