windows判断本地服务端口被哪个应用占用

背景

我的一个现有qt应用会启动一个websock服务,需要用到127.0.0.1 的某个端口,以19898端口为例。启动后,我的另一个应用会连接该websock服务后,连接该服务成功。每次都可以成功连接,但是收不到消息。

分析

  • 测试服务连接

使用telnet 127.0.0.1 19898,服务可以连接。

cmd 复制代码
telnet 127.0.0.1 19898

我杀掉启动websock服务的进程,再次使用telnet 127.0.0.1 19898,发现服务还是可以连接。

那么,这个端口肯定是被其他应用给占用了

解决

  • 查看端口占用情况

使用netstat命令查看端口占用情况,我这里只关心我关注的端口19898

cmd 复制代码
netstat -ano | findstr 19898

可以看到确实该端口被占用了

可以看到占用端口的进程id为 10568

  • 根据进程id查询对应应用信息
cmd 复制代码
tasklist | findstr 10568

可以看到是这个程序占用了我们的端口。(当然我知道这个程序,是我另一个应用的程序),所以我杀掉该应用程序。

现在再启动带websock服务的那个应用,接收消息都正常了

当然处理该问题最简单的方式就是换个端口。(但是就是想看看为什么可以连接成功,但是就是接收不到消息)

相关推荐
非凡ghost3 小时前
MusicPlayer2(本地音乐播放器)
前端·windows·学习·软件需求
时光803.4 小时前
快速搭建青龙面板Docker教程
windows·ubuntu·bash·httpx
阿闽ooo4 小时前
外观模式:从家庭电源控制看“简化接口“的设计智慧
c++·设计模式·外观模式
你的冰西瓜5 小时前
C++中的list容器详解
开发语言·c++·stl·list
ComputerInBook8 小时前
函数调用栈帧分析(Windows平台)
c语言·windows·编译原理·汇编语言·c++语言
会飞的胖达喵8 小时前
Qt自动信号槽连接机制:深入解析与应用实践
开发语言·qt
Halo_tjn8 小时前
Java List集合知识点
java·开发语言·windows·算法·list
CC.GG9 小时前
【C++】哈希表的实现
java·c++·散列表
bkspiderx10 小时前
C++变量生命周期:从创建到销毁的完整旅程
c++·生命周期·作用域·变量生命周期
染指111011 小时前
20.过保护句柄提权和黑客工具检测-Windows驱动
windows·驱动开发·windows驱动