【03-07 原创作品】一款TCP流量监控插件以及进程占用示例皮肤
rainmeter吧
全部回复
仅看楼主
level 3
【首发百度贴吧】一款TCP流量监控插件以及进程占用示例皮肤
先上皮肤效果:表头分别是进程名、CPU、RAM、GPU、IO、TCP流量、得分
表头可点击,切换显示CPU占用、RAM占用、GPU占用、IO占用、TCP网络占用和总分的 TOP 8。
得分计算为1CPU、GPU记1分,RAM按百分比计算分数,IO每1MB/s算1分,NET每1MB/s算10分。
皮肤原理:
1、进程CPU、RAM、GPU、IO资源占用都是通过rainmeter自带的UsageMonitor插件获取。
2、进程的TCP链接流量,通过UsageMonitor插件似乎没有找到相关的监控项,因此作者自写插件获取,原理是通过win32 api的GetPerTcpConnectionEStats接口。
3、先获取CPU、RAM、GPU、IO、TCP的TOP10进程,再按照进程名整合为TOP 8的资源消耗。
4、如果表格中数据为空,表明该进程可能为内存前10,但不是CPU前10,因此CPU格没数据。
5、可以通过点击切换表头,查看各资源占用TOP的进程。
-----------------------------------------------------------------------------------------------------------------------------
自写的TCP流量插件:TCP监控插件,监控详细进程TCP链接的流量。用法可详见皮肤设置。
说明:
1、网络流量基本等同于TCP流量+UDP流量之和。win32 api开放查询TCP链接统计信息api,但没查到有UDP链接的流量信息api,因此该插件只统计进程的TCP流量。UDP流量应该可以通过winpcap等网络嗅探器去获取,但该操作相当于开启了网络抓包,可能会带来性能上的问题,因此我没有做,后续可能会加这个接口。(如有错误,请跟帖指出,我会看的)
2、网页及一般app基本都是用TCP链接,迅雷等P2P下载会用大量UDP链接+少量TCP链接,因此统计迅雷等下载软件的流量时不准。
3、插件的调用需要以管理员运行rainmeter,可以通过计划任务设置开机启动权限。
4、皮肤及插件的源代码地址见2楼。
2022年03月07日 10点03分 1
level 3
这是二楼。
2022年03月07日 10点03分 2
源码Github地址:[url]https://github.com/Gon-Emiya/HDBRainmeterPlugin [/url]
2022年03月07日 10点03分
吧务
level 14
牛蛙
2022年03月07日 16点03分 3
大佬出现了awa
2022年03月07日 16点03分
level 1
非常感谢楼主分享!这是我目前能找到的唯一一个显示进程的,目前使用挺好的。但是我的流量数据那边都是显示“0”或者“--”,你上面说“TCP监控插件,监控详细进程TCP链接的流量。用法可详见皮肤设置。”我一直也没找到,试着下载了你说的插件也不行……因为我是小白,看不懂代码,你方便的时候能详细说明一下吗?(已经是管理员运行了,其他都正常,就是流量有问题)
2024年03月14日 11点03分 4
level 1
楼主,在哪里改 默认显示模块,“橙色”那个
就是比如 现在 一打开默认按“score”显示,我想改成 “NET”,或者别的“CPU”是橙色的,怎么改?
是在 Process.ini 里改吗?还是 ProcesslistScript.lua 这个文件里?
因为我是小白,看不懂代码,全网也只找到你有这个皮肤,方便的话能教我一下么?
2025年10月25日 17点10分 5
1