• SmartIIS 使用VS组件,在没有装IIS情况下浏览.NET网站的简单服务器(附源码)


    今天有感于http://www.cnblogs.com/stone_w/archive/2012/10/12/2720832.html的这篇文章,所以写了一个Winform程序,原理都是一样,都是提取VS中的组件并用命令行运行就可以了,先看界面吧:

    如下功能:

    1. 点击“启动”即启动服务器,
    2. 点击“浏览网站”或“网站地址”打开网站
    3. 所有CMD指令在后台运行

    具体方法:

    •  在项目中加入   WebDev.WebHost.dll 文件

          路径:%windir%\assembly\gac_32\webdev.webhost\(文件夹下)

    •  在项目中加入 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

    •     执行CMD命令 WebDev.WebServer20.EXE /port:端口号 /path:"文件物理路径" /vpath:"/" 

    其他不多说,直接上代码:

    /// <summary>
            /// 启动服务
            /// </summary>
            /// <param name="sender"></param>
            /// <param name="e"></param>
            private void button2_Click(object sender, EventArgs e)
            {
                //从Visual Studio 中提取的两个文件:WebDev.WebHost.dll , WebDev.WebServer20.EXE
                //执行CMD命令(\"为双引号的转义符),即:WebDev.WebServer20.EXE /port:端口号 /path:"文件物理路径" /vpath:"/"
                String str ="WebDev.WebServer20.EXE  /port:"+textBox2.Text+" /path:\""+ textBox1.Text+"\" /vpath:\"/\"";
                RunCmd (str);
    
                //提示
                listBox1.Items.Add("[" + DateTime.Now.ToShortTimeString() + "]  服务已启动......");
            }
    
            /// <summary>
            /// 运行CMD命令
            /// </summary>
            /// <param name="command"></param>
            /// <returns></returns>
            private void  RunCmd(string command)
            {
                try
                {
                    //实例一个Process类,启动一个独立进程
                    Process p = new Process();
                    //Process类有一个StartInfo属性,这个是ProcessStartInfo类,包括了一些属性和方法,下面我们用到了他的几个属性:
                    p.StartInfo.FileName = "cmd.exe";           //设定程序名
                    p.StartInfo.Arguments = "/c " + command;    //设定程式执行参数
                    p.StartInfo.UseShellExecute = false;        //关闭Shell的使用
                    p.StartInfo.RedirectStandardInput = true;   //重定向标准输入
                    p.StartInfo.RedirectStandardOutput = true;  //重定向标准输出
                    p.StartInfo.RedirectStandardError = true;   //重定向错误输出
                    p.StartInfo.CreateNoWindow = true;          //设置不显示窗口
                    p.Start();   //启动
                }
                catch
                { }
            }

    下载源码:https://files.cnblogs.com/mane/SmartIIS.zip

  • 相关阅读:
    阿凯
    hlg神秘植物--矩阵快速幂
    poj1185炮兵阵地--状态dp
    该怎么办
    hlg2096---状态压缩dp
    这个世界

    第三篇
    LCT板子
    spoj COT
  • 原文地址:https://www.cnblogs.com/mane/p/2721389.html
Copyright © 2020-2023  润新知