1

こんにちは、事前に感謝します。英語のレベルが低いことを許してください。しかし、助けが必要です。私の問題は、インターネット経由でバイトを送信するアプリケーションを作成しようとしていて、接続しようとすると、「接続できた」と表示されることです実行されません マシンが積極的に拒否されました IP:PORT

心に留めておいてください:

  • 「127.0.0.1」で接続しようとすると、アプリケーションが動作します
  • ファイアウォールがオフになっている
  • ポートが開いています。CMD で「Ne​​tStat -an」コマンドを実行すると、アプリが次のように表示されます 0000:Port LISTENING これは、サーバーがリッスンしていることを意味します
  • サーバーとクライアントの両方が同じポートを使用します

これはサーバーのコードです

 public static void start()
    {
        SocketPermission permission = new SocketPermission(NetworkAccess.Accept, TransportType.Tcp,"", SocketPermission.AllPorts);

        sock = new Socket(AddressFamily.InterNetwork, SocketType.Stream, Settings.Protcole);
        permission.Demand();
        IPEndPoint end = new IPEndPoint(IPAddress.Any, Settings.Port);
        sock.Bind(end);
            sock.Listen(10);
            accepted = sock.Accept();
            Connected = true;
        }

これはクライアントのコードです

 public static void Connect(string IP)
    {
        try
        {
            SocketPermission permission = new SocketPermission(NetworkAccess.Accept, TransportType.Tcp, Server.GetIP(), SocketPermission.AllPorts);
            sock = new Socket(AddressFamily.InterNetwork, SocketType.Stream, Settings.Protcole);
            permission.Demand();
            IPEndPoint end = new IPEndPoint(IPAddress.Parse(IP), Settings.Port);
            sock.Connect(end);
            Connected = true;
        }
        catch (Exception ex)
        {
            MessageBox.Show(ex.Message, "O.o", MessageBoxButtons.OK, MessageBoxIcon.Error);
        }
    }
4

0 に答える 0