相关疑难解决方法(0)

在C#中,如何检查TCP端口是否可用?

在C#中使用TcpClient的或一般连接到插座我怎么能先检查如果某个端口是免费在我的机器上?

更多信息: 这是我使用的代码:

TcpClient c;
//I want to check here if port is free.
c = new TcpClient(ip, port);
Run Code Online (Sandbox Code Playgroud)

.net c# tcp tcpclient

116
推荐指数
9
解决办法
19万
查看次数

两个进程如何在Windows 7中侦听同一端口?

我在Windows 7中运行两个stunnel实例,配置为侦听同一个端口,看起来它们都在同一端口上成功侦听(只使用socket()/ bind()/ listen()).两个实例似乎都成功通过所有调用,并且它们显示在netstat中:

C:\>netstat -ano | grep 8000
  TCP    0.0.0.0:8000           0.0.0.0:0              LISTENING       5828
  TCP    0.0.0.0:8000           0.0.0.0:0              LISTENING       5852
Run Code Online (Sandbox Code Playgroud)

第一个要监听的是获取所有传入的请求.

这与我的所有期望完全相反.(我当时希望让EADDRINUSE告诉我港口很忙.)所以....

  1. 为什么/如何运作?这种行为在某些情况下有用吗?
  2. 如果另一个应用程序要捕获传入的请求,我不希望实例成功运行...如何使端口独占?

sockets windows-7

8
推荐指数
1
解决办法
5042
查看次数

标签 统计

.net ×1

c# ×1

sockets ×1

tcp ×1

tcpclient ×1

windows-7 ×1