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服务的那个应用,接收消息都正常了

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

相关推荐
王老师青少年编程20 小时前
2026年全国青少年信息素养大赛算法应用主题赛(C++赛项-初赛-赛前冲刺模拟卷1:文末附答案和解析)
c++·全国青少年信息素养大赛·答案·初赛·模拟卷·2026年·算法应用主题赛
alwaysrun20 小时前
C++之轻量级JSON序列库jsoncpp
c++·json·编程语言
咩咦20 小时前
C++学习笔记09:内联函数 inline
c++·学习笔记·inline·内联函数·宏函数
m0_5649149220 小时前
WINDOWS全部窗口最大化解决方案— —Autohotkey
windows
zh路西法20 小时前
【git一键push脚本】基于Windows bat脚本的一键git提交脚本
windows·git·elasticsearch
计算机安禾20 小时前
【c++面向对象编程】第19篇:多继承与菱形继承(二):虚拟继承的内存模型与复杂性
开发语言·c++
思麟呀20 小时前
在C++基础上理解CSharp-1
开发语言·c++·c#
星河漫步Lu20 小时前
QT6中五步完成Android的环境配置
android·qt
Desenberg20 小时前
【Claude Code】因为中途修改配置路径导致Claude Code 插件安装失败
windows·bug
小短腿的代码世界20 小时前
Qt状态机框架深度解析:从状态图到事件驱动闭环
开发语言·qt