Foxtable(狐表)用户栏目专家坐堂 → 多个服务器启动之后,如何用HttpServer.Close()只判断当前行启动的服务器ip及端口与是否打开,然后关闭它,而不是把之前打开的web服务全部关闭!


  共有3444人关注过本帖树形打印复制链接

主题:多个服务器启动之后,如何用HttpServer.Close()只判断当前行启动的服务器ip及端口与是否打开,然后关闭它,而不是把之前打开的web服务全部关闭!

帅哥哟,离线,有人找我吗?
李孝春
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2472 积分:17346 威望:0 精华:0 注册:2013/1/31 0:03:00
多个服务器启动之后,如何用HttpServer.Close()只判断当前行启动的服务器ip及端口与是否打开,然后关闭它,而不是把之前打开的web服务全部关闭!  发帖心情 Post By:2020/2/28 11:27:00 [只看该作者]

多个服务器启动之后,如何用HttpServer.Close()只判断当前行启动的服务器ip及端口与是否打开,然后关闭它,而不是把之前打开的web服务全部关闭!

窗体表双击事件代码如下:
If HttpServer.IsRunning Then
    HttpServer.Close()
    
Else
    HttpServer.Prefixes.Add("http://" & e.Table.Current("服务器ip") & ":" & e.Table.Current("服务器端口") & "/")
    HttpServer.Start()
End If
窗体表图片

图片点击可在新窗口打开查看此主题相关图片如下:123.jpg
图片点击可在新窗口打开查看


 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110648 积分:563148 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/2/28 11:34:00 [只看该作者]

这个没有办法的,只能全部关闭,然后重新启动需要的ip和端口。这个关闭启动是瞬间完成的,应该不会有多大影响

 回到顶部
帅哥哟,离线,有人找我吗?
李孝春
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2472 积分:17346 威望:0 精华:0 注册:2013/1/31 0:03:00
回复:(有点蓝)这个没有办法的,只能全部关闭,然后...  发帖心情 Post By:2020/2/28 13:17:00 [只看该作者]

那有没有办法  直接启动这个窗体表中所有的IP及对应的端口呢?

 回到顶部
帅哥,在线噢!
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110648 积分:563148 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/2/28 14:56:00 [只看该作者]

代码是自己写的,想加多少个就加呗

HttpServer.Prefixes.Add("第一个地址")
HttpServer.Prefixes.Add("第二个地址")
……
HttpServer.Prefixes.Add("第N个地址")

 回到顶部
帅哥哟,离线,有人找我吗?
李孝春
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2472 积分:17346 威望:0 精华:0 注册:2013/1/31 0:03:00
回复:(有点蓝)代码是自己写的,想加多少个就加呗Ht...  发帖心情 Post By:2020/2/28 15:02:00 [只看该作者]

有点蓝老师  这样一行一个添加有点麻烦哦  万一有好几十个 那就悲催了

 回到顶部
帅哥,在线噢!
有点蓝
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110648 积分:563148 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/2/28 15:22:00 [只看该作者]

如果数据是保存到表格里的,遍历所有行咯。

 回到顶部
帅哥哟,离线,有人找我吗?
李孝春
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2472 积分:17346 威望:0 精华:0 注册:2013/1/31 0:03:00
回复:(有点蓝)如果数据是保存到表格里的,遍历所有...  发帖心情 Post By:2020/2/28 16:12:00 [只看该作者]

有点蓝老师  现在代码如下:
HttpServer.Close()
For Each dr As Row In Tables("Http服务_Table1").Rows
    HttpServer.Prefixes.Add("http://" & dr("服务器ip") & ":" & dr("服务器端口") & "/")
    HttpServer.WebPath =  dr("服务器目录")  '指定静态文件存储位置
    HttpServer.Start()
    output.Show("http://" & dr("服务器ip") & ":" & dr("服务器端口") & "/")
    Dim Proc As New Process '定义一个新的Process
    Proc.File = "http://" & dr("服务器ip") & ":" & dr("服务器端口") & "/" '指定要打开的网页地址
    Proc.Start()
Next

基本可以实现遍历所有表中的数据  并且对应打开服务

有没有更简单的写法呢?
上述思路是:
先关闭所有的web服务,然后再遍历Http服务_Table1中的字段 然后打开

 回到顶部
帅哥,在线噢!
有点蓝
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110648 积分:563148 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/2/28 16:52:00 [只看该作者]

不管有多少个ip,只能设置一个WebPath和启动一次
HttpServer.Close()
For Each dr As Row In Tables("Http服务_Table1").Rows
    HttpServer.Prefixes.Add("http://" & dr("服务器ip") & ":" & dr("服务器端口") & "/")
    output.Show("http://" & dr("服务器ip") & ":" & dr("服务器端口") & "/")
    Dim Proc As New Process '定义一个新的Process
    Proc.File = "http://" & dr("服务器ip") & ":" & dr("服务器端口") & "/" '指定要打开的网页地址
    Proc.Start()
Next
    HttpServer.WebPath =  dr("服务器目录")  '指定静态文件存储位置
    HttpServer.Start()

 回到顶部