簡體   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