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

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

相关推荐
码农多耕地呗16 分钟前
刷别的学校oj—河工大oj1073-1099
开发语言·c++·算法
萌豚老师18 分钟前
右键添加获取可供WSL使用的路径,对windows文件夹也适用,即获取符合Linux规范的路径内容给WSL
linux·windows
sukalot28 分钟前
windows C#-查询表达式基础(三)
开发语言·windows·c#
南东山人1 小时前
一文说清C++类型转换操作符(cast operator)
开发语言·c++
JavaPub-rodert1 小时前
Windows系统下载、安装和配置Python环境变量 --- 《跟着小王学Python》
开发语言·windows·python
小奥超人1 小时前
word技巧:选择题的ABCD选项如何对齐?
windows·经验分享·microsoft·word·办公技巧
沐泽Mu1 小时前
嵌入式学习-C嘎嘎-Day04
c语言·开发语言·c++·学习
草原上唱山歌2 小时前
C++需要学习哪些内容?
开发语言·c++·学习
Clrove.113 小时前
C++初阶——queue
开发语言·c++
hunandede3 小时前
FFmpeg 4.3 音视频-多路H265监控录放C++开发十三.3:将AVFrame转换成AVPacket.封装。代码改动
c++·ffmpeg·音视频