0

我们有一些遗留的 c++ 应用程序可以将这些端口连接到其他服务器,但是,当我们使用 tcpclient 创建(而是尝试创建)连接时,我们会得到端口的“ArgumentOutOfRangeException”。当我们将端口更改为 8000 之类的东西时,它可以正常工作,但我们不能这样,因为我们有旧应用程序可以使用这些端口。

我不应该为此使用 TcpClient,还有其他方法仍在使用 TcpClient 吗?谢谢

这是示例代码:

 const int port = 80011;
 client.Connect(addressTxt.Text, port);

使用有效的 IP 地址和有效的端口我得到一个连接,使用端口 80011 或任何更大的端口都会引发异常(任何高于 65536 的端口都会引发此异常)。

4

1 回答 1

0

正如您已经注意到的,端口只能在 0-65535 范围内。您不能使用不适合 16 位数字的端口号。

有关详细信息,请参阅 TCP 标头格式:http ://www.freesoft.org/CIE/Course/Section4/8.htm

于 2013-05-30T18:34:27.083 回答