private void buttonStart_Click(object sender, EventArgs e)
        {
            buttonStart.Enabled = false;
            buttonStop.Enabled  = true;
            label1.Text         = "HttpServer已启动";

            Ip              = textBoxIP.Text;
            Port            = Convert.ToInt32(textBoxPort.Text.Trim());
            linkLabel1.Text = string.Format("http://{0}:{1}/ODOO/Test", Ip, Port);
            linkLabel2.Text = string.Format("http://{0}:{1}/v1/ODOO/", Ip, Port);
            linkLabel4.Text = string.Format("http://{0}:{1}/v2/ODOO/", Ip, Port);

            //添加防火墙例外端口,供客户端访问
            INetFwManger.NetFwAddPorts("ODOO ", Port, "TCP");

            #region 执行dos命令

            DosCommandOperation dosCommandOperation = new DosCommandOperation();
            string dosRet = dosCommandOperation.Execute(string.Format("netsh http add urlacl url=http://{0}:{1}/ user={2}", Ip, Port, EnvironmentUserName));
            #endregion

            #region 启动HttpServer
            //string ip = Method.GetLocalIP()[1];
            string[] strUrl = new string[] { string.Format("http://{0}:{1}/ODOO/", Ip, Port), string.Format("http://{0}:{1}/v1/ODOO/", Ip, Port), string.Format("http://{0}:{1}/v2/ODOO/", Ip, Port) };
            _httpListener = new THttpListener(strUrl);
            _httpListener.ResponseEvent += _HttpListener_ResponseEvent;
            _httpListener.Start();
            #endregion
        }
        public void RunServer()
        {
            //setPortFireWall("20300", "fileServer");
            //INetFwManger.NetFwAddApps("fileServer", this.GetType().Assembly.Location);
            //开启公用网络防火墙通行
            INetFwManger.NetFwAddPorts("fileServerPort", 20300, "TCP");
            Server server = new Server();

            server.UpdateMessage   += SetString;
            server.OnClientRequest += OnClientRequest;
            server.RunServer();
        }
Beispiel #3
0
 /// <summary>
 /// 加入防火墙
 /// </summary>
 private void btnNetFw_Click(object sender, EventArgs e)
 {
     INetFwManger.NetFwAddApps("SocketServer", Application.ExecutablePath);
 }