mirror of
https://github.com/snltty/linker.git
synced 2025-12-24 12:38:04 +08:00
fdcb07ae6504e114ce2eab7fe1d51cd579b05473
说明
- 这是一个粗略的局域网监控程序(说是局域网,你放外网也不是不行)
- 使用组件式,非常方便扩展,可由 内存共享(MemoryMappedFiles) 提供自己定义数据
- 内存占用小,(非定时,自动GC),linux无解
- 使用 MemoryPack、AForge、SharpDX、NAudio
功能
系统
- 桌面捕获,捕获鼠标,sharpDX
- 双指画面缩放
- 区域热更新
- 系统信息,展示CPU,内存利用率,硬盘使用率 win api
- 发呆时间,展示系统无操作时间 win api
- 音量控制,音量和静音 NAudio
- 音频峰值,展示音频峰值,是否在播放音视频,及激昂程度 NAudio
- 系统亮度,暂不支持外界显示器 WMI
- U 盘限制,禁用或启用U盘 regedit
- 模拟键盘,键盘操作 win api
- 模拟鼠标,鼠标操作 win api
程序
- 程序限制,分为禁止打开程序,和自定检测关闭程序 regedit
- 前景窗口,当前焦点程序捕获,手动关闭之 win api
- 时间统计,查看程序使用时间记录
网络
- 网络限制,程序,域名,IP 黑白名单
- 网速显示,由网络限制组件提供
消息
- 消息提醒,向设备发送消息提醒 winform
- 全局广播,向所有设备发送广播 winform
- 语音消息,向设备发送语音消息 NAudio
命令
- 发送命令,cmd命令,开机(shutdown -s -f -t 00),关机(shutdown -r -f -t 00),等等
共享
- 屏幕共享,以某一设备为主机,向其它设备共享屏幕,用于演示 sharpDX
壁纸
- 壁纸程序,为所有设备设置统一壁纸,以程序的方式 winform
- 键盘按键,显示键盘按键(当前键盘按键由壁纸程序提供) win api
锁屏
- 锁屏程序,打开锁屏程序,禁用键盘 winform
其它
- 设备用户,显示当前使用设备用户姓名 MemoryMappedFiles
面板
运行参数
公共的
- 【--mode】 运行模式 client,server
- 【--report-delay】 数据报告间隔ms 30
- 【--screen-delay】 屏幕报告间隔ms 200
- 【--screen-scale】 屏幕图片缩放比例 0.2 默认1/5
客户端
- 【--server】 服务器ip 192.168.1.18
- 【--service】 服务端口 1802
- 【--share-key】 自定数据共享 cmonitor/share,每项数据长度255
- 【--share-len】 长度 2550,默认预留10项位置,0键盘KeyBoard、1壁纸Wallpaper、2锁屏LLock
服务端
- 【--web】 管理UI端口 1800
- 【--api】 管理接口端口 1801
- 【--service】 服务端口 1802
安装示例
windows计划任务,客户端、服务端
params = " --report-delay 30 --screen-delay 200 --screen-scale 0.2";
//client
params += " --mode client --name cmonitor --server 192.168.1.18 --service 1802";
params += " --share-key cmonitor/share --share-len 2550";
//server
params = " --mode server --web 1800 --api 1801 --service 1802";
schtasks.exe /create /tn "cmonitor" /rl highest /sc ONLOGON /delay 0000:30 /tr "\"{exePath}\"{params}" /f
linux服务端 systemd
//1、下载linux版本程序,放到 /usr/local/cmonitor 文件夹,并在文件夹下创建一个 log 目录
//3、写配置文件
vim /etc/systemd/system/cmonitor.service
[Unit]
Description=cmonitor
[Service]
WorkingDirectory=/usr/local/cmonitor
ExecStart=/usr/local/cmonitor/cmonitor --mode server --web 1800 --api 1801 --service 1802
ExecStop=/bin/kill $MAINPID
ExecReload=/bin/kill -HUP $MAINPID
Restart=always
[Install]
WantedBy=multi-user.target
//4、重新加载配置文件
systemctl daemon-reload
//5、启动,或者重新启动
systemctl start cmonitor
systemctl restart cmonitor
linux服务端 docker
docker镜像 snltty/cmonitor-alpine-x64 or snltty/cmonitor-alpine-arm64
docker run -it -d --name="cmonitor" \
-p 1800:1800/tcp -p 1801:1801/tcp -p 1802:1802/tcp -p 1802:1802/udp \
snltty/cmonitor-alpine-x64 \
--entrypoint ./cmonitor.run --mode server --web 1800 --api 1801 --service 1802
支持作者
Languages
JavaScript
74.6%
C#
19.5%
Vue
4.1%
HTML
0.9%
Shell
0.4%
Other
0.4%



