こんにちは、事前に感謝します。英語のレベルが低いことを許してください。しかし、助けが必要です。私の問題は、インターネット経由でバイトを送信するアプリケーションを作成しようとしていて、接続しようとすると、「接続できた」と表示されることです実行されません マシンが積極的に拒否されました IP:PORT
心に留めておいてください:
- 「127.0.0.1」で接続しようとすると、アプリケーションが動作します
- ファイアウォールがオフになっている
- ポートが開いています。CMD で「NetStat -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);
}
}