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/
版权声明:转载请以链接形式注明原始出处。
Installshield自动安装IIS组件的更多相关文章
- Windows Xp Home Edition 安装IIS组件
问题描述: 在虚拟机(操作系统是Windows Xp Home Edition)中安装Sql Server 2005的时候警告缺少IIS相关组件,控制面板"添加/删除组件"中也没有 ...
- 使用PowerShell 自动安装IIS 及自动部署网站
执行环境:Windows Server 2012 R2 安装iis核心代码,可自定义安装项 注意这里不能使用add-windowsfeature "Web-Filtering", ...
- Linux 实现自动安装服务组件以及优化内核参数 (转)
安装好Linux裸机后(安装请参考:http://blog.itpub.net/26230597/viewspace-1380155/),还需要在其上安装一些基础组件,一般是手动一个个安装,比较繁复也 ...
- 阿里云学生优惠Windows Server 2012 R2安装IIS,ftp等组件,绑定服务器域名,域名解析到服务器,域名备案,以及安装期间错误的解决方案
前言: 这几天终于还是按耐不住买了一个月阿里云的学生优惠.只要是学生,在学信网上注册过,并且支付宝实名认证,就可以用9块9的价格买阿里云的云服务ECS.确实是相当的优惠. 我买的是Windows S ...
- PowerShell自动部署IIS站点(Windows Server 2008 R2)
1.功能描述 1. 连接软件源服务器下载.NET Framework 4.0..NET Framework 4.5. 2. 检测并判断当前.NET Framework版本是否小于v4.0,如果小于则进 ...
- 阿里云云服务器Windows Server 2012 R2无法安装IIS等组件的解决办法
Windows Server2012 R2数据中心版 不管安装什么组件,都显示存储空间不足,无法应用命令,错误代码0x80070008. 最终确认是服务器配置过低的原因,因为这个型号是低级别的配置,1 ...
- Windows IIS 使用批处理脚本自动安装与卸载
IIS6:适用于win server 2003 :: ******************* :: * 安装 :: ******************* :Install Cls @echo. &a ...
- 无人参与安装IIS 6.0
使用脚本安装 IIS 从“开始”菜单,单击“运行”. 在“打开”框中,键入 cmd,然后单击“确定”. 在命令提示符下,键入 Sysocmgr.exe /i:sysoc.inf /u:%path_to ...
- 一键安装IIS的点点滴滴——For所有Microsoft的操作系统(上)
原文www.cnblogs.com/cdts_change/archive/2010/03/04/1677338.html 临近公司的软件要完工了,最近几天一直在泉哥的带领下为我们公司的产品做IIS一 ...
随机推荐
- “AIR SDK 0.0: AIR SDK location “...\devsdks\AIRSDK\Win” does not exist.”问题解决~
原文同步至:http://www.waylau.com/air-sdk-0-0-air-sdk-location-does-not-exist-address/ 导入AS3项目时提示“AIR SDK ...
- Red Gate系列之五 .NET Reflector 7.6.1.824 Edition .NET程序反编译神器(附插件安装教程2012-10-13更新) 完全破解+使用教程
原文:Red Gate系列之五 .NET Reflector 7.6.1.824 Edition .NET程序反编译神器(附插件安装教程2012-10-13更新) 完全破解+使用教程 Red Gate ...
- 关于mysql主从复制的概述与分类(转)
一.概述: 按照MySQL的同步复制特点,大体上可以分为三种类别: 1.异步复制: 2.半同步复制: 3.完全同步的复制: -------------------------------------- ...
- Python3.4 邮件(包含附件与中国)
import smtplib import os from email.mime.text import MIMEText from email.mime.multipart import MIMEM ...
- LightOj 1148 Basic Math
1148 - Mad Counting PDF (English) Statistics Forum Time Limit: 0.5 second(s) Memory Limit: 32 MB Mob ...
- CSharp SQLServer 登陆
=======后台SQLServer存储过程================ --创建数据库create database Stu; --创建表use MyShool;if exists(select ...
- 生活中的大数据 hadoop
大数据和我有关吗?大数据就是大量的数据吗?只有互联网公司才有大数据吗?想盘活大数据必须买昂贵的软硬件吗?大数据怎么存储计算?大数据,这个时下最火热的互联网词语,你了解多少呢?
- 重新想象 Windows 8 Store Apps (30) - 信息: 获取包信息, 系统信息, 硬件信息, PnP信息, 常用设备信息
原文:重新想象 Windows 8 Store Apps (30) - 信息: 获取包信息, 系统信息, 硬件信息, PnP信息, 常用设备信息 [源码下载] 重新想象 Windows 8 Store ...
- linux基础知识1
1. 硬盘分区 分区类型:主分区,扩展分区.逻辑分区: 分区规则: 一个硬盘仅仅能有1到4个主分区: 一个硬盘仅仅能有1个扩展分区: 一个硬盘的主分区和扩展分区最多仅仅能有4个. 扩展分区仅仅能用来包 ...
- 房费制 之 登录BUG
声明:以下内容只有当你登录到一个username同时,学生不能申请多次登录. 说是BUG,事实上这也不是一个BUG,仅仅是想出一个办法,解决一个大家好多人都没有解决的问题.以下就给大家 ...