山与路远程控制 一个基于electron和golang实现的远控软件

山与路远程控制

🎥项目演示地址

还在制作…

♻️项目基本介绍

山与路远程控制是基于electron(vue3)golang实现的远程控制软件(项目界面主要模仿向日葵远程软件,如有侵权请告知),代码可能有点臃肿毕竟只花了一周左右写的无聊项目,如果对其感兴趣的大佬可以fork自行修改(大佬勿喷)

技术栈

  1. vue3
  2. golang
  3. webrtc
  4. cgo
  5. turn

项目思路

  • 键鼠主要通过cgo调用windowapigoreboot来实现击键的监听和控制端模拟
  • 控制端和被控制根据服务器转发后在通过webrtc和golang的pion实现p2p通信
  • 服务端主要功能是为了转发数据和提供turn服务器
  • 视频流直接使用最简单的webrtc实现实时画面传输
  • 当新设备访问服务端则会自动分配识别码和验证码,通过识别码和验证码来建立连接

🧧 作者自己的配置环境

nodejs

16.20.1

npm

在这里插入图片描述

golang

在这里插入图片描述

📍 服务端相关配置config.yaml

serveraddr: ":9998"  #后端地址
turn:
  public_ip: "127.0.0.1" #公网地址
  port: 3478  # turn端口
  thread_num: 5  # 如果服务端是linux则填写   进程数
db_path: "./remote.db" # 数据库路径

🔖项目运行

后端运行

git clone https://github.com/OblivionTime/remote_electron.git
cd /remote_electron/server
go mod tidy
go run main.go

前端调试运行

git clone https://github.com/OblivionTime/remote_electron.git
#启动客户端
cd /remote_electron/client
go mod tidy
go run main.go

# 启动前端页面
cd /remote_electron/ui
yarn
#调试
yarn serve
#打包
yarn build

👻注意事项

  1. 打开软件第一时间修改服务器地址

在这里插入图片描述

技术人员根据自己的需求去修改

🎉已完成功能

  • 获取识别码和验证码
  • webrtc 建连
  • 连接后完全控制对方的键鼠
  • 断开连接
  • 悬浮球
  • 保存连接过的设备
  • 实现自己的turn服务器
  • 文件传输功能

🖼️ 项目截图

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

注意electron打包会出现的问题

打包前必须做的事

  • 进入到下面目录C:\Users\自己的用户名\AppData\Local\electron-builder\Cache
    在这里插入图片描述

  • 创建目录winCodeSignnsis
    在这里插入图片描述

  • electron必须安装包目录下的winCodeSign-2.6.0.7z解压到C:\Users\自己的用户名\AppData\Local\electron-builder\Cache\winCodeSign目录下

在这里插入图片描述

结语

在这里插入图片描述

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-04-22 13:32:05       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-04-22 13:32:05       101 阅读
  3. 在Django里面运行非项目文件

    2024-04-22 13:32:05       82 阅读
  4. Python语言-面向对象

    2024-04-22 13:32:05       91 阅读

热门阅读

  1. Proxmox VE (PVE) 教学 (2) | 网络配置

    2024-04-22 13:32:05       38 阅读
  2. 高可用环境kafka消息未按顺序消费问题

    2024-04-22 13:32:05       35 阅读
  3. WebSocket发送与接收数据

    2024-04-22 13:32:05       38 阅读
  4. 探索ChatGPT写作新视野

    2024-04-22 13:32:05       31 阅读
  5. C# 中优雅的动态序列化接口返回数据

    2024-04-22 13:32:05       41 阅读
  6. Docker

    2024-04-22 13:32:05       37 阅读
  7. LeetCode279 完全平方数

    2024-04-22 13:32:05       32 阅读
  8. Vue3中props的原理与使用

    2024-04-22 13:32:05       34 阅读
  9. http、https、json编程

    2024-04-22 13:32:05       43 阅读
  10. 人工智能安全与光明时代

    2024-04-22 13:32:05       38 阅读