繁体   English   中英

SuperSocket无法设置服务器

[英]SuperSocket can't set up a server

我写这篇文章是为了找出下面代码导致超级服务器设置失败的原因。

    var appServer = new AppServer();
    if (!appServer.Setup(8080)){
        MessageBox.Show("Failed!");
    }

我在防火墙中添加了允许端口8080的规则,因为我的防火墙是由公司IT启用的。 不知道为什么设置失败。 有解释吗?

在使用以下内容在控制台应用程序中进行本地测试时(需要NuGet包SuperSocketSuperSocket.Engine ;

namespace SupersocketTest
{
    using System;
    using SuperSocket.SocketBase;

    class Program
    {
        static void Main(string[] args)
        {
            var server = new AppServer();
            bool success = server.Setup(8080);
            Console.WriteLine($"Server setup: {success}");
            Console.ReadKey();
        }
    }
}

操作成功完成。

在线查看代码 ,底层连接仍然是基于Socket的(正如包的名称所暗示的)。 因此,它受到有关套接字如何在.NET中正常工作的所有规则的约束。

可能导致Socket无法设置的事情是(但不限于)

  • 插座正在使用中
  • 插座已关闭
  • 操作系统已用尽可用套接字(不太可能,但技术上可行)

没有关于你得到的异常的更多细节我只能猜测,但我怀疑套接字正在使用,因为8080是另一个应用程序可能正在使用的80的常见替代。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM