C#开源项目:SiMay远程控制管理系统
Posted dotNET跨平台
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#开源项目:SiMay远程控制管理系统相关的知识,希望对你有一定的参考价值。
C#开源项目:SiMay远程控制管理系统
下方基于原项目仓库readme
系统介绍
-
SiMay远程控制管理系统是一个Windows远程控制系统,底层基于IOCP的异步通信模型,能对海量客户端实时监控,目前功能已实现:逐行扫描远程桌面经典的文件管理、实时远程语音、实时摄像头、经典注册表管理、命令行终端、实时系统进程管理、用户桌面视图墙轮播等功能。并且可捕获UAC,WinLogon桌面。系统实现了中间会话服务器,可支持不同平台多主控端同时监控同一被控端。被控服务端支持绿色启动及以系统服务方式安装,项目完全采用C#.NET开发,代码仅供参考,项目不定时更新,欢迎关注点星星,fork。欢迎入群技术交流:905958449 :laughing: :blush:
申明
-
作为创作者,我对由此软件引起的任何行为和/或损害不承担任何责任。您对自己的行为承担全部责任,并承认此软件仅用于教育和研究目的。不得用于您不拥有或有权使用的任何系统。使用此软件,您自动同意上述内容,感谢支持。
背景
-
本项目仅为个人项目,经过几次重构,系统相对比较成熟了,决定开源反馈开源社区,希望更多人能和我一起进步,欢迎吐槽改进。
系统项目结构
SiMay.Core【公共核心功能】
-
SiMay.Basic --基础通用库 -
SiMay.Core.Standard --系统核心统一公共库【统一通讯指令丶共用组件丶通信数据实体等..】 -
SiMay.Serialize.Standard --轻量级高性能二进制序列化库【作用:系统通信数据实体化】 -
SiMay.ModelBinder --调用绑定器
SiMay.RemoteMonitor【主控制端】
-
SiMay.RemoteControls.Core --主控端核心库 -
SiMay.RemoteMonitor.Windows --Windows主控管理端 -
SiMay.RemoteMonitor.Web --Web主控端 -
SiMay.RemoteMonitorForWebSite --Web监控前端
SiMay.Platform【平台实现】
-
SiMay.Platform.Windows -- 基于Windows的功能实现
SiMay.RemoteService【远程被控服务端】
-
SiMay.RemoteService.Loader --内存加载Loader,实现远程内存载入被控端核心库 -
SiMay.ServiceCore --被控端核心库
SiMay.SessionProvider【会话提供层】
-
SiMay.Net.SessionProvider --会话提供库【作用:提供服务器监听模式或者中间会话代理协议】 -
SiMay.Net.SessionProvider.Core --代理协议统一公用库【作用:统一中间库和服务器的通信指令及序列化等】 -
SiMay.Net.SessionProviderServiceCore -- 中间服务核心库 -
SiMay.Net.SessionProviderService --中间会话代理服务器【作用:提供保持服务端会话保持丶数据转发功能,基于此实现多平台端监控】
SiMay.Sockets【通信层】
-
SiMay.Socket.Standard --轻量级通信引擎 -
SiMaySocketTestApp --通信引擎测试程序
编译
-
1.Bin为编译目录,重新生成后,主控程序将编译到此目录,Bin->dat目录为被控服务端目录,被控服务端编译后在此。(没有目录新建一下)
运行
-
1.局域网
-
2.广域网
-
3.中间服务器部署
条件:需要中间服务器处于公网环境(建议部署在公网服务器,或者设置路由内网映射),并且开放中间服务器监听端口(默认522端口、注意检查端口是否开放、防火墙通行规则)。
-
4.Web端监控 编译SiMay.RemoteMonitor.Web.exe,Web服务为控制台形式无系统设置界面,可直接使用Windows控制端保存的系统配置文件SiMayConfig.ini,会话模式可使用服务器模式或者中间会话模式启动,启动成功后控制台打印监听成功或初始化成功字样即设置正确(服务器模式为监听成功,中间会话模式为初始化成功 及 WebSocket端口监听成功),如有被控端连接成功,控制台会实时打印上线连接信息,Web服务设置完成。
使用浏览器,访问SiMay.WebRemoteMonitor网站,页面弹出Id,Key输入框即表示与Web服务连接成功,输入SiMay.RemoteMonitorFor.Web.exe配置的账号密码即可登录,连接成功后页面可看到被控服务端计算机桌面视图,长按视图可打开更多功能。
技术
-
组件式系统架构设计 -
远程同步调用 -
实体消息传输协议 -
应用多连接会话支持 -
可视区域逐行扫描算法的远程桌面 -
中间会话服务转发,支持多个主控端同时实时监控 -
HOOK技术 -
WebSocket Web端监控 -
IOCP异步Socket高性能通信模型 -
基于Windows WaInXX系列实现的语音通讯 -
基于Dx组件捕获摄像头
开发环境
-
建议 Visual Studio 2019 企业版
参与贡献
-
Fork 本仓库 -
新建 Feat_xxx 分支 -
提交代码 -
新建 Pull Request
未来构想
-
移动Web监控端 -
跨平台的系统管理监控
SiMay远程监控管理系统更新及更新计划说明
6.0更新
-
跨平台支持,重构中间会话服务器使其支持多主控端同步监控 --2020.2.15 -
二进制序列化器采用反射缓存,提高系统性能 -- 2020.1.25 -
屏幕视图轮播 --2020.1.15 -
Web端主控端 --2020.5.15(预览) -
远程核心库加载并行控制 --未完成 -
远程桌面,语音监听,摄像头监控支持录制功能 --2.26 -
远程核心库载入更新(可实现功能快速升级及逻辑调整) -- 6.7 -
框架升级调整(实现"应用"的开放封闭设计原则,减少"应用代码"对核心代码的影响) --11.10 -
远程被控端服务文件更新 --11.23 10.框架升级调整(应用模块实现远程同步调用) --11.13 11.框架升级调整(应用模块支持多应用服务独立连接并可断线重连、增强复用性) --7.20 12.增加下载管理模块 - 11.22
5.0更新
-
优化了通讯库,支持FULL丶PACK数据处理方式,实现了更友好的配置接口 -
新增中间会话转发服务,增加了SessionProvider层,控制端支持监听模式丶中间会话模式,在此基础上实现了Web监控服务,支持Web方式监控 -
增强了远程桌面模块,支持全屏监控的远程鼠标控制及多屏幕切换 -
重构代码结构,实现了组件化系统框架,屏蔽了系统底层实现细节,增强了可扩展性 --2019.5.19 -
远程桌面增加了可视区域扫描算法,仅扫描可视区域变化部分,优化了远程桌面模块,速度更加快了 --2019.4.2 -
增强系统管理模块,实现了进程实时监控 --8.28 -
语音监听,视频监控支持录制功能 --6.0已实现 -
被控服务实现了以服务方式安装,使用服务方式可实现Session隔离穿透捕获桌面(锁屏,UAC), --11.9 -
文件管理功文件夹传输重构优化 2019.7.13 -
系统传输数据消息实体化 -- 2019-6-4 -
二进制序列化器采用反射缓存,提高系统性能 --已实现 -
远程桌面增加画面质量调整,优化低速率网络下的控制体验,使画面更加流畅 -- 7.27 -
支持远程更新服务端 -- 7.27 -
增加列表排序功能 -- 7.27 -
注册表组件更新,支持二进制丶多种类型数据编辑 -- 9.6 -
重构主控端,主控端逻辑核心库与展示层彻底分离(如:基于核心库横向扩展Web主控端,实现多平台逻辑复用) - 11.2
4.0更新
-
重写了通讯层,解决网络环境极差时频繁断开连接的情况,实现了对象池,以更好的并发能力应对大规模的客户端数据交互 -
设计了更稳定的通讯层接口,通讯层彻底与逻辑层分离 -
优化了部分功能的通讯协议 -
优化了远程桌面模块 -
修复远程桌面在高分屏笔记本时显示不完全的问题 -
修复视频监控显示不完全的问题 -
增强了语音监听模块 -
优化了窗体上的设计,用户体验更好了 -
修复了系统管理
一些推荐
-
【开源Blazor控件库】
-
【开源B/S项目】WTM
-
【开源WPF控件库】
-
【开源WPF项目】
-
【开源Xamarin项目】
-
【开源Winform控件库】、
-
【开源Winform项目】SiMay远程控制管理系统
-
【开源Qt控件库】、
-
【开源Qt项目】
-
【更多分享】
资源分享
-
回复数字【01】:获取DotNet技术资料 -
回复数字【02】:获取Java技术资料 -
回复数字【03】:获取android技术资料 -
回复数字【04】:获取C++技术资料 -
回复数字【05】:获取Qt技术资料 -
回复数字【06】:获取React资源 -
添加号主微信号【dotnet9】:备注【入群】加入与大佬们的技术交流
❝时间如流水,只能流去不流回。
公众号:Dotnet9 号主微信号:dotnet9 原文作者:dWwwang 仓库地址:SiMay远程控制管理系统 编辑:沙漠之尽头的狼 日期:2020-12-04
点击阅读原文,关注Dotnet9更多好文。
以上是关于C#开源项目:SiMay远程控制管理系统的主要内容,如果未能解决你的问题,请参考以下文章
[C#项目开源] MongoDB 可视化管理工具 (2011年10月-至今)