山与路远程控制 一个基于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目录下

在这里插入图片描述

  • 进入到C:\Users\自己的用户名\AppData\Local\electron-builder\Cache\nsis目录下,将electron必须安装包目录下分别解压成如下图所示的样子
    在这里插入图片描述
    详细教程:https://www.cnblogs.com/liliyou/p/13423709.html

结语

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/640649.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

鸿蒙开发实例:【配置OpenHarmony SDK】

配置OpenHarmony SDK 在设置OpenHarmony应用开发环境时,需要开发者在DevEco Studio中配置对应的SDK信息。 说明: 请注意,OpenHarmony SDK版本精简了部分工具链,因此不适用于HarmonyOS应用开发。 前提条件 已下载并安装好DevEco …

Python 基于 OpenCV 视觉图像处理实战 之 OpenCV 简单人脸检测/识别实战案例 之四 简单行人人体检测效果

Python 基于 OpenCV 视觉图像处理实战 之 OpenCV 简单人脸检测/识别实战案例 之四 简单行人人体检测效果 目录 Python 基于 OpenCV 视觉图像处理实战 之 OpenCV 简单人脸检测/识别实战案例 之四 简单行人人体检测效果 一、简单介绍 二、简单行人人体检测效果实现原理 三、简…

网络安全数字孪生:一种新颖的汽车软件解决方案

摘要 随着汽车行业转变为数据驱动的业务,软件在车辆的开发和维护中发挥了核心作用。随着软件数量的增加,相应的网络安全风险、责任和监管也随之增加,传统方法变得不再适用于这类任务。相应的结果是整车厂和供应商都在努力应对汽车软件日益增加…

论文解读:(VPT)Visual Prompt Tuning

文章汇总 要解决的问题 大型模型应用于下游任务本身就存在挑战。最明显的(通常也是最有效的)适应策略是对预先训练好的模型进行全面的端到端微调。 动机 只微调参数的一个子集 解决的办法 只在输入空间中引入少量特定于任务的可学习参数,而在下游训练期间冻结…

visionTransformer window平台下报错

错误: KeyError: Transformer/encoderblock_0/MlpBlock_3/Dense_0kernel is not a file in the archive解决方法: 修改这个函数即可,主要原因是Linux系统与window系统路径分隔符不一样导致 def load_from(self, weights, n_block):ROOT f&…

idea文件菜单打不开,pom一直在加载。有些项目一直在加载。从文件打开,d盘进不去。

idea文件菜单打不开,pom一直在加载。有些项目一直在加载。从文件打开,d盘进不去。 在这里会有红色感叹号,进入吧插件禁止启用。就ok。我这里miniapp插件坏了。重启就行。

使用Go语言和chromedp库下载Instagram图片:简易指南

摘要/导言 本文将介绍如何使用Go语言配合chromedp库来下载Instagram上的图片。我们将通过一个简单的示例来展示整个过程,包括如何设置爬虫代理IP以绕过网络限制。 背景/引言 在数据采集和自动化测试领域,Go语言以其出色的执行效率、简洁的语法和卓越的…

Topaz Photo AI 3.0.0 (macOS Universal) - AI 图片修复工具

Topaz Photo AI 3.0.0 (macOS Universal) - AI 图片修复工具 Maximize Image Quality with AI 请访问原文链接:Topaz Photo AI 3.0.0 (macOS Universal) - AI 图片修复工具,查看最新版。原创作品,转载请保留出处。 作者主页:sy…

Django模型的属性与方法

本节介绍Django模型的属性和方法,以及如何重写之前定义的模型方法等内容。 3.5.1 模型属性 Django模型中最重要的属性就是Manager,它是Django模型和数据库查询操作之间的接口,并且被用作从数据库当中获取实例的途径。如果Django模型中没有…

AI视频分析技术的常用开源模型及TSINGSEE青犀AI视频识别分析能力介绍

AI视频分析技术是指利用人工智能技术来对视频数据进行分析和处理的技术。开源模型是指可以免费获取和使用的代码模型,可以帮助开发人员快速构建和部署AI视频分析应用程序。 以下是一些业内常用的用于AI视频分析技术的开源模型: OpenCV:Open…

区块链安全应用-------压力测试

基于已有的链进行测试(build_chain默认建的链 四个节 点): 第一步:搭链 1. 安装依赖 在ubuntu操作系统中,操作步骤如下: sudo apt install -y openssl curl 2. 创建操作目录, 下载安装脚本 ## 创建操作…

Gateway断言工厂

这个用的时候可以在官网上查