上一篇《史上最酷的IIS一键安装,你想要吗? 博客园全球首发》完成后,有人提出了些问题,比如,有没有用于Windows 2003的IIS自动安装程序呀,杀毒软件误报为病毒呀,制作过程和原理是怎样的呀等等,今天索性好事做到底,把Windows 2000、XP、2003、Vista、2008下的IIS自动安装程序全部做出来,涵盖了IIS5.0到7.0三个不同版本,并解决了杀毒软件误报问题,做出了一套迄今为止认为比较完美的IIS全自动安装解决方案。
先谈谈IIS自动安装程序的制作原理吧。尽管在此之前,我梦寐以求了好多年,甚至愿意花大价钱买来一种IIS自动安装程序制作技术,以解决基于IIS的应用软件的部署难题,以至于今天对自己的成果竟有些舍不得公开的感觉,但想想,我的知识和技术不也源于别人的分享吗?所以,还是贴出来,让大家都受益吧。
其实,这个IIS自动安装程序的原理,说穿了也很简单,只是没有多少人想到而已。最关键的一点是,为什么在使用传统方法安装IIS时,放入光盘后就会自动安装呢?这是由于系统会到一些指定的路径去找它所需要的文件,如果我们把它需要的文件整理出来,然后放到一个目录下,再让操作系统从这个目录去找,不是就解决了吗?这样就避免了安装时需要系统光盘的问题,以及用IIS文件包安装时需要不断地重复指定文件路径的问题了。
想到了这一点,后面的事情就好办了,用个DOS批处理就解决了。通过查资料得知,注册表中HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Setup下面的项是关于安装时的查找路径的,于是先将其备份到一个文件,以便完成任务后还原到原来的状态。接着,确定一个路径(比如,在C盘根目录建一个文件夹)作为放置IIS相关文件的临时目录,再在注册表中把系统用于搜索所需文件的路径的键值改为这个路径,然后运行sysocmgr.exe程序(这是用于管理系统组件的一个程序,具体用法可参考http://support.microsoft.com/kb/222444)来执行添加IIS组件的任务。这时,系统将会从我们所指定的路径去查找所需要的文件,因此不会跳出对话框来烦人。待添加完毕后,再根据系统是否已安装.net,来决定是否注册asp.net运行环境。最后,还原注册表的相关键值,删除临时文件夹,OK,收工!
基本原理就是这样简单,但具体实现过程还得需要查一些资料。不过,既然已经有现成的做好了,何必还劳神费力来自己制作呢?直接下载就行了:
点此下载用于Windows 2000的IIS一键安装程序(IIS5.0)
点此下载用于Windows XP的IIS一键安装程序(IIS5.1)
点此下载用于Windows 2003的IIS一键安装程序(IIS6.0)
点此下载用于Windows Vista/2008的IIS一键安装脚本(IIS7.0)
注意,上面提供的只是临时下载地址,如果下载不了,请到网站http://landian.cq.cn的首页去下载。
需要说明的是,用于Vista/2008的IIS7.0的安装,实际上并不需要额外的文件包或光盘,只需要执行一个安装脚本就行了,所以这里提供的只是一个批处理文件,放在这儿只是便于成为一个完整的系列而已。
最后说明一下我制作的IIS自动安装程序的特点:它是真正的一键安装,不会再叫你确认了,所以一执行就会开始安装,在安装完后会自动注册asp.net运行环境,为基于IIS的软件开发和部署带来了极大的便利。软件包经过多重病毒扫描,可放心使用。如果有什么问题,请跟贴反馈出来,以便于改进。
本文及相应的IIS自动安装程序,欢迎转载,但请勿修改,谢谢!