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

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

相关推荐
添砖java‘’1 分钟前
序列与反序列化
服务器·网络·c++·序列化·反序列化
John_Hui3 分钟前
Windows 超长文件名解决方案
windows
AnalogElectronic8 分钟前
windows文件加解密工具,python实现,速度极快,篡改文件头尾信息以及还原
开发语言·windows·python
vivie_x10 分钟前
轻量 Windows 桌面金价监控工具 AnyGold 更新|走势图 + AI 研判 + 声音提醒上线
windows
白杆杆红伞伞32 分钟前
Qt进程间通信
开发语言·qt
ฅ^•ﻌ•^ฅ133 分钟前
LeetCode hot 100(复习c++) 1-15
c++·算法·leetcode
艾莉丝努力练剑34 分钟前
确保多进程命名管道权限一致的方法
java·linux·运维·服务器·开发语言·网络·c++
Z9fish39 分钟前
sse哈工大C语言编程练习44
c语言·c++·算法
特种加菲猫41 分钟前
透过源码看本质:list 的模拟实现与核心原理
开发语言·c++
李日灐42 分钟前
改造红黑树实现封装 map/set:感受C++ 标准容器的精妙设计与底层实现
开发语言·数据结构·c++·后端·算法·红黑树