Installshield自动安装IIS组件

原文:Installshield自动安装IIS组件

一. 工程类型:IS2010 installscript

二.原理:

1. XP和 Server2003系统:由于系统默认没有自带IIS组件,一般情况我们是需要通过添加删除程序----WINDOWS组件安装界面并插入系统盘来进行安装。实际上我们可以不调出添加删除程序界面,而通过系统可选组件安装管理进程”sysocmgr.exe”(system stand-alone optional component manager)来调出WINDOWS组件安装的界面,并且事先定义好的安装/卸载组件配置文件,这样程序在读入该文件时就会对文件内的设置作相应处理从而实现IIS自动安装。但这样安装的话中间会不停地弹出让用户选择路径,如果我们想将组件的安装位置指定于光盘以外的其它驱动/文件夹的话,必须更改那两项注册表值,并且把文件放至具有I386特质的文件夹下。那么我们的IIS无人值守功能就实现了.

2. Windows 7和 Server 2008系统:由于系统默认自带了IIS组件,只是默认情况下处于非开启状态,只要通过命令行开启即可。

三.具体代码实现:

1.XP和 Server2003系统:

1)配置文件:

[Components]

iis_common = ON

iis_www = ON

iis_asp = ON

iis_inetmgr = ON

aspnet= ON

2)修改两项注册表值到实际的组件文件存放的位置

   RegDBSetDefaultRoot ( HKEY_LOCAL_MACHINE );
   if (RegDBKeyExist ( "\\SOFTWARE\\Microsoft\\windows\\currentversion\\setup

\\ServicePackSourcePath" )=1) then
         RegDBDeleteKey ( "\\SOFTWARE\\Microsoft\\Windows\\currentversion\\setup

\\ServicePackSourcePath" );
   endif; 

   RegDBSetKeyValueEx ( "\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Setup" ,

"ServicePackSourcePath" , REGDB_STRING , SRCDIR^"iis6" , -1 ); 

   if (RegDBKeyExist ( "\\SOFTWARE\\Microsoft\\windows\\currentversion\\setup \\SourcePath" )=1) then
         RegDBDeleteKey ( "\\SOFTWARE\\Microsoft\\Windows\\currentversion\\setup

\\SourcePath" );
   endif;
   RegDBSetKeyValueEx ( "\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Setup" ,

"SourcePath" , REGDB_STRING , SRCDIR^"iis6" , -1 ); 

3)调用可选组件安装管理sysocmgr.exe进程自动安装IIS
   LaunchAppAndWait ( SystemFolder^"sysocmgr.exe" , "/i:sysoc.inf /r /u:\""

+SRCDIR^"iis6\\config.txt\"" , LAAW_OPTION_WAIT ); 

sysocmgr.exe参数:

  /i:<master_oc_inf> - (必须的) 指定主 inf 的名称。以此作为安装的源路径。
  /u:<unattend_spec> - 指定无人参予的操作参数
  /r                 - 抑制重新启动(在需要重新启动时)。
  /z                 - 显示跟随的参数不是 OC 参数且不需要传给组件。
  /n                 - 强制将指定的主 inf 作为新的文件处理。
  /f                 - 表明所有组件安装状态需要初始化,就象安装程序从未运行一样。
  /c                 - 在安装的最后阶段不允许取消。
  /x                 - 抑制  '初始化' 标题。
  /q                 - 同 /u 一起使用。 运行没有界面的无人参与安装。
  /w                 - 同 /u 一起使用。如果需要重新启动,提示用户而不要自动重新启动。
  /l                 - 识别多种语言安装。

2.Windows 7系统可以通过dism.exe开启系统自带的IIS

1)通过命令dism /online /get-features | more查询要开启的IIS的feature名为:IIS-WebServerManagementTools

2) 开启IIS feature:

 LaunchAppAndWait
(WINSYSDIR^"dism.exe"," /online /enable-feature
/featurename:IIS-WebServerManagementTools /NoRestar",WAIT);

LaunchAppAndWait
(WINSYSDIR^"dism.exe"," /online /enable-feature /featurename:IIS-FTPServer
/NoRestar",WAIT);

LaunchAppAndWait
(WINSYSDIR^"dism.exe"," /online /enable-feature /featurename:
IIS-WebServer
/NoRestar",WAIT);

 注:禁用IIS feature可以 用:

LaunchAppAndWait
(WINSYSDIR^"dism.exe"," /online /disable-feature
/featurename:IIS-WebServerManagementTools /NoRestar",WAIT);

LaunchAppAndWait
(WINSYSDIR^"dism.exe"," /online / disable-feature /featurename:IIS-FTPServer
/NoRestar",WAIT);

LaunchAppAndWait
(WINSYSDIR^"dism.exe"," /online / disable-feature /featurename:
IIS-WebServer
/NoRestar",WAIT);

3.Server 2008系统可以通过ServerManagerCmd.exe开启系统自带的IIS

1)通过命令ServerManagerCmd.exe -query查询要开启的IIS的名为:web-server

2)安装IIS feature: LaunchAppAndWait (WINSYSDIR^"ServerManagerCmd"," -i web-server",WAIT);

注:移除IIS feature可以 用:LaunchAppAndWait (WINSYSDIR^"ServerManagerCmd"," -remove web-server",WAIT);

 

 

以上XP系统自动安装IIS组件的方法,非常感谢呼吸新世界 提供的思路,原文出处链接 :http://wglnngt-001.blog.163.com/blog/static/4077058420091114114655168/

 

 

版权声明:转载请以链接形式注明原始出处。

 

时间: 2024-11-05 14:58:00

Installshield自动安装IIS组件的相关文章

一步步教你在Win2003下安装IIS组件

不管是个人用户还是企业用户都会遇到建立网站,发布网页的问题,要知道在Windows操作系统下最有效最常见的发布站点的工具就是IIS了,所以要想建立自己的站点一定要学会安装和使用IIS组件. Windows2003中的IIS组件版本为6,他比Win2000下的IIS更加安全.所以我们有必要学习IIS6的安装.本篇文章将带领大家一起从零开始学习在Windows2003操作系统下安装IIS组件. 第一步:默认情况下IIS6是没有安装在Windows2003系统中的,所以我们需要手动安装这个组件,通过任

Tip:Eclipse 自动安装和更新组件

自动安装   1.  在菜单中选择"窗口/首选项",找到项目"安装/更新",从中配置安装和更新属性.      2.  在菜单中选择"软件更新/查找并安装",显示如下对话框:      3.  如果更新已有组件,选择"搜索当前已安装功能部件的更新":如果安装新组件,选择搜索要安装的新功能部件. 4.  在安装新组件的情况下,输入远程站点的URL或者一个指定本地磁盘位置,eclipse将自动安装相应组件. 5.  在更新已有组件

IIS自动安装程序(免费)

本文转载:http://www.cnblogs.com/cunet/archive/2008/10/31/1323896.html   IIS的安装对于非专业人士来说是件难以完成的任务,通常不知道如何着手,且安装过程繁琐,易出错,还需要操作系统安装光盘.为了尽可能简化IIS的安装,蓝点软件于2008年10月研究制作了这个全系列IIS自动安装程序.下载解压后直接双击其中的exe文件或bat文件即可自动安装IIS,并且如果系统安装了.net,也会自动注册好ASP.NET运行环境,为基于IIS的软件开

利用微软自带IIS组件架设Web服务器指南

IIS是微软主推的Web服务器,在Windows 2000/2003 Server和Windows XP中都自带了IIS组件,通过IIS组件我们可以架设WEB.FTP.Mail等服务器.本文就以Windows XP为平台,向大家简要介绍一下如何安装和配置IIS. 一.安装IIS组件 第一步:依次选择"开始"→"设置"→"控制面板"→"添加或删除程序",打开"添加或删除程序"对话框. 第二步:在该对话框的左侧

Win8.1怎么安装IIS?

  1.从控制面板,或从左下角Win图标上点右键选择"程序和功能".   2.打开程序和功能后,在左上角选择"启动或关闭Windows功能".   3.从功能区可以看到关于IIS的选项,共有两项,把这两项勾选,然后确定.   4.系统开始自动安装IIS的相关应用.   5.安装完毕后,可以在我的电脑上点右键,打开管理.   6.从管理菜单中,可以看到多了一项IIS服务项目.   7.从IIS的项目中,我们可以设置IIS的一些基本参数,包括网站的基本信息等.   

刚开始学ASP求教在Windows XP mode安装IIS的问题

问题描述 RT..刚刚试了,装好了,然后点控制面板,管理工具,internet信息服务左边的菜单栏里却没有"默认web站点"这个下拉菜单,因为刚刚开始学ASP所以完全不会哈..求各位高手指教 解决方案 解决方案二:你得先去控制面板里的安装卸载--安装卸载windows组件然后在那里先把所需iis的组件安上才行解决方案三:安装IIS组件的时候是不是漏装了组件,试试一楼的方法解决方案四:实际上XPMode只是一个预先配置好的XP虚拟机磁盘镜像而已.因此,如果你不喜欢,手上有一张Window

Windows Server 2008 安装 IIS 7.0图文详解

默认下,安装Windows server 2008时没有安装IIS功能组件,安装IIS组件. 单击"开始"->"程序"->"管理工具"->"服务器管理", 或者在"运行"中输入命令:servermanager.msc命令打"服务器管理"程序, 或者在"搜索框"中直接搜索"服务器管理". 在"角色"选项中,单击&

用InstallShield 进行 ASP 软件的打包和自动安装(Jaron原创)

installshield|打包|原创|自动安装 用InstallShield 进行 ASP 软件的打包和自动安装(Jaron原创) 作者: Jaron 点击链接查看作者详细信息 简介: 用InstallShield 进行 ASP 软件的打包和自动安装(原创) #include "ifx.h" //不能移动//////////////////////////////////////////////////////////////////////////////// 用InstallSh

用InstallShield 进行 ASP 软件的打包和自动安装

installshield|打包|自动安装 #include "ifx.h" //不能移动//////////////////////////////////////////////////////////////////////////////// 用InstallShield 进行 ASP 软件的打包和自动安装 // 原创作者: 贾俊 (Jaron)// 网址: http://www.jiangdu.net// 邮件: jaron@jdinfo.net// 首次发表于网易,Chin