如何关闭其他应用程序的套接字连接?

时间:2019-05-01 16:20:04

标签: .net winapi

类似于TCPView可以执行的操作。

.net或winapi中有什么方法吗?

我需要使此过程自动化,以模拟集成测试丢失的连接。

此外,由于http://www.nirsoft.net/utils/cports.html被我的公司封锁,因此我无法使用。

1 个答案:

答案 0 :(得分:1)

现在,当程序要创建套接字时,它将创建一个进程,该进程侦听预定义的选择端口。

如该线程Manually close a port from commandline中所述,套接字已绑定到创建它的进程。这意味着在进程终止时将自动释放它。我猜想cports(您所引用的程序)基本上可以做到。

现在,您可以使用Windows“ netstat”中的内置程序来获取保留端口的列表,以及使它们保持打开状态的进程ID。

看看此链接Check Open TCP/IP Ports in Windows

有多种方法可以运行程序,然后获取“ std输出”以进行进一步处理。这是一个显示Execute a Command in C#的链接。

摘要:(我的直接方法是...) 从C#拨打netstat,从您感兴趣的端口获取ID。然后调用“ Taskkill / PID the_id / F”。

尝试一下,希望它对您有用。