Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何获取特定插座并将其关闭_C#_.net 3.5_Sockets - Fatal编程技术网

C# 如何获取特定插座并将其关闭

C# 如何获取特定插座并将其关闭,c#,.net-3.5,sockets,C#,.net 3.5,Sockets,我想关闭一个套接字,以便在同一端口上重新打开一个套接字,但该套接字上没有句柄 如何让正在本地主机873上侦听的套接字关闭它?如果没有内核驱动程序,这是不可能的。在Windows中,在另一个进程中抓住套接字句柄并主动关闭它是不合法的 您可以进行调查。只有拥有套接字的进程才能关闭它,因此您可以尝试的只是结束拥有套接字的进程 在命令行中,您可以使用-o选项到netstat找到使用特定套接字的进程的进程ID。例如: netstat -noa | findstr LISTENING 但是,我不知道如何在

我想关闭一个套接字,以便在同一端口上重新打开一个套接字,但该套接字上没有句柄


如何让正在本地主机873上侦听的套接字关闭它?

如果没有内核驱动程序,这是不可能的。在Windows中,在另一个进程中抓住套接字句柄并主动关闭它是不合法的

您可以进行调查。

只有拥有套接字的进程才能关闭它,因此您可以尝试的只是结束拥有套接字的进程

在命令行中,您可以使用
-o
选项到
netstat
找到使用特定套接字的进程的进程ID。例如:

netstat -noa | findstr LISTENING

但是,我不知道如何在.NET中以编程方式执行此操作。

这将允许多人绑定,但您无法关闭另一个句柄。应用程序拥有套接字,但它超出了范围。嗯,它被命令关闭,然后它超出了范围,但nestat仍然将其列为Listings,那么如何使用sysinternal中的TCPView来实现呢?供参考: