简介

visual studio安装后会自带小型的“iis”服务器,本文就简单提取一下这个组件,自己做一个小型“iis”服务器吧。
先来说用途吧(废话可绕过),比如在服务器上没有安装iis,或者给客户演示asp.net程序,客户机没装iis或者客户的机子装不了iis,或者嫌装iis麻烦,等等,前提下,或者想快速在不打开iis的情况下,通过鼠标右键就能让动态程序就跑起来的情况下,都是很实用的(注意被使用机器必须有net framework环境)。

使用截图

visual studio内置“iis”组件提取及二次开发-LMLPHP

visual studio内置“iis”组件提取及二次开发-LMLPHP

visual studio内置“iis”组件提取及二次开发-LMLPHP

实现原理

调用vs安装自动组件WebDev.WebServer20.EXE完成的,调用命令:WebDev.WebServer20.EXE /port:端口号 /path:"文件物理路径" /vpath:"/"

实现方法

系统程序目录:

visual studio内置“iis”组件提取及二次开发-LMLPHP

1、vs安装包提取两个组件
  a、WebDev.WebHost.dll
      路径:%windir%\assembly\gac_32\webdev.webhost\(文件夹下)
  b、WebDev.WebServer20.EXE(或者WebDev.WebServer40.EXE 4.0版本)
      路径:
        VS2008 下的 WebDev.WebServer.EXE 路径:
        C:\Program Files\Common Files\Microsoft Shared\DevServer\9.0\WebDev.WebServer.EXE
        VS2010 Bit64下 路径:
        C:\Program Files (x86)\Common Files\microsoft shared\DevServer\10.0\WebDev.WebServer20.EXE
        C:\Program Files (x86)\Common Files\microsoft shared\DevServer\10.0\WebDev.WebServer40.EXE
2、添加系统右键菜单(快捷键)相关
  a、添加注册表代码(批处理):

@echo off
set batpath=%~sdp0main.bat" "%%1
REG ADD HKEY_CLASSES_ROOT\Directory\shell\运行SmallIIS\command /ve /t REG_SZ /d %batpath%

b、卸载注册表代码(批处理):

REG Delete HKEY_CLASSES_ROOT\Directory\shell\运行SmallIIS /f

3、主要系统调用组件主题代码(批处理)

@echo off
set /p myport=请输入端口号:
start %~sdp0WebDev.WebServer20.EXE /port:%myport% /path:%1 /vpath:"/"
start http://localhost:%myport%/
::echo 端口的是:%myport%
::echo 端口的是:%1
::pause

总结

需要的朋友可以下载源码:http://pan.baidu.com/share/link?shareid=78820&uk=590309421如果觉得对您有帮助,请点击支持,谢谢!

出处:http://www.cnblogs.com/vipstone/archive/2012/10/12/2720832.html

04-16 08:12