吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 796|回复: 7
上一主题 下一主题
收起左侧

[其他] HShare1.0.0(鸿蒙与win用usb隧道远程)

[复制链接]
跳转到指定楼层
楼主
lm339lm 发表于 2026-7-13 13:03 回帖奖励
为什么会有这个项目
我平时主要用鸿蒙电脑工作,但有些 Windows 独占的软件还是绕不开,所以经常需要远程桌面到 Windows 台式机。
之前一直用的常规远程方案:Windows 开 RDP,鸿蒙端装个 RDP 客户端,走公司 WiFi 连。听起来没问题吧?
但实际体验很痛苦——公司人多,同一个 WiFi 下几十上百号人,一到上班高峰期,远程桌面就卡成 PPT:画面延迟几秒钟、操作不跟手、时不时断开重连。无线网络的本质决定了这不是换个软件能解决的。
后来想过用有线局域网,但工位没有预埋网线,拉一根长网线也不现实。
那还有什么物理链路是现成的?
USB 线啊。USB 本身就是高速串行总线,USB 3.0 的理论带宽到 5Gbps,延迟微秒级,而且专线专用——不受任何网络拥塞影响。
基本原理
鸿蒙系统自带的 hdc(HarmonyOS Device Connector)工具,本质上就是一个调试桥,类似 Android 的 ADB。它有一个非常实用的功能叫 rport(反向端口转发),可以把设备上的端口映射到电脑本地。
整个链路非常简单:
┌─────────────────┐     USB 数据线      ┌──────────────────┐
│  鸿蒙设备         │ ════════════════    │  Windows 电脑     │
│  (手机/平板/PC)  │        │           │                  │
│                  │       │           │  HShareTunnel    │
│  HShare App      │       │           │  (自动 hdc rport)│
│  ↓               │       │           │  ↓               │
│  127.0.0.1:3389  │◄──────┴──────────│  127.0.0.1:3389  │
│  (RDP 客户端)    │   hdc rport 隧道  │  (Windows RDP 服务)│
└─────────────────┘                    └──────────────────┘
数据流:
USB 数据线连接鸿蒙设备和 Windows 电脑
Windows 端运行 hdc rport tcp:3389 tcp:3389,把本机的 3389 端口反向映射到鸿蒙设备
鸿蒙设备上的 HShare App(或任何 RDP 客户端)连接 127.0.0.1:3389
数据全程通过 USB 物理链路传输,不经过任何网络设备
关键点:127.0.0.1:3389 对鸿蒙设备来说已经是本地回路地址了——因为 hdc rport 会把端口映射到设备自身的 localhost。这就是「USB 隧道」的通俗含义。
HShare 是什么
HShare 是为这个场景专门做的一个项目,包含两部分:
1. HShare App(鸿蒙端)
一个原生 HarmonyOS 应用(API 22,ArkTS + NAPI),主要功能:
USB 隧道引导 — 一步步引导用户开启 USB 调试、配置环境
隧道检测 — 自动扫描 127.0.0.1:3389 是否已就绪
内嵌 RDP 客户端 — 基于原生 C++ 实现的 RDP 协议栈,一键连接,不需要装第三方 RDP 软件
连接管理 — 断开/重连/状态监控
2. HShareTunnel(Windows 端)
一个 .NET 控制台工具,在 Windows 上运行,自动完成:
检测同目录下的 hdc.exe
连接鸿蒙设备
自动建立 hdc rport tcp:3389 tcp:3389 隧道
每 5 秒刷新检测连接状态
关于 hdc: hdc 是 HarmonyOS SDK 自带的工具。如果你装了 DevEco Studio,在 SDK 目录的 openharmony/toolchains/ 下就能找到 hdc.exe。也可以把 hdc.exe 和 libusb_shared.dll 提取出来放在 HShareTunnel.exe 同目录下。
硬核细节(给开发者看)
RDP 协议实现
HShare 的 RDP 客户端是自包含的 C 实现,不依赖 FreeRDP 或任何第三方 RDP 库:
功能        状态
TCP/X.224 传输层        ✅ 已完成
RDP Negotiation (RDP_NEG_REQ/RSP)        ✅ 已完成
Fast-Path Input (键盘/鼠标/滚轮)        ✅ 已完成
NAPI 桥接 (8 个 JS 接口)        ✅ 已完成
ArkTS 集成 (import + 状态管理)        ✅ 已完成
MCS Connect/GCC 完整协商        🔧 进行中
Security / Capability 协商        🔧 进行中
画面帧渲染 (XComponent)        📋 待实现

操作步骤(完整版)前提条件一套配齐需要:
一台 HarmonyOS 设备(手机/平板/PC,API 22+,即 HarmonyOS 6.0+)
一台 Windows 电脑(已开启远程桌面服务)
一根 USB 数据线
hdc 工具(可从 DevEco Studio SDK 提取)
第一步:Windows 端开启远程桌面
打开「设置」→「系统」→「远程桌面」
开启「启用远程桌面」
记下电脑名(后面连接会用到)
第二步:连接 USB 并开启调试
用 USB 数据线连接鸿蒙设备和 Windows 电脑
在鸿蒙设备上:设置 → 关于 → 版本号,连续点击 7 次直到提示「已进入开发者模式」
返回 设置 → 系统和更新 → 开发者选项
打开 USB 调试 开关
如果电脑上弹出授权弹窗,勾选「一律允许」并确认
第三步:建立隧道(Windows 端操作)
有两种方式:
方式 A:使用 HShareTunnel.exe(推荐)
把 HShareTunnel.exe、hdc.exe、libusb_shared.dll 放到同一目录
双击运行 HShareTunnel.exe
看到 ✅ hdc rport 隧道已建立 的提示即成功
方式 B:手动操作
打开 CMD(命令提示符)
进入 hdc.exe 所在目录
依次执行:
hdc list targets
hdc rport tcp:3389 tcp:3389
看到 Forwarding tcp:3389 to tcp:3389 success 即成功
第四步:鸿蒙端连接
方式 A:使用 HShare App
打开 HShare App
切换到「USB 隧道连接」标签确认隧道状态显示「已连接」
切换到「RDP 远程控制」标签
点击「启动 RDP 连接」
使用第三方 RDP 客户端 连接地址填:127.0.0.1:3389
推荐客户端:
AirDRP — 纯血鸿蒙 RDP 客户端
第五步:日常使用
隧道建立后,只要不拔 USB 线、不关闭 CMD 窗口,隧道会一直保持。你可以随时在 HShare App 里断开或重连 RDP。
如果断开后需要重连,在 CMD 中按 Ctrl+C 停止,再重新执行 hdc rport tcp:3389 tcp:3389 即可。
效果怎样
画面流畅度:USB 链路的延迟远低于 WiFi,鼠标拖动几乎零延迟
稳定性:不受任何网络波动影响,会议室、高峰时段都没问题
安全性:数据只走 USB 线缆,不经过公司网络,不用担心被嗅探
即插即用:USB 线插上就跑,不需要配 IP、不需要连 WiFi
局限性
需要 USB 数据线连接,不是无线的(有舍有得)
需要 Windows 开启远程桌面(大多数 Windows 专业版/企业版自带,家庭版需额外开启)
需要开发者模式 + USB 调试(建议日常使用时保持开启)
项目状态
目前是早期开发阶段,核心框架已就绪,RDP 协议实现在逐步完善中。


软件下载:
没有上架应用商店,需要小白调试助手侧载安装(自行百度安装)
文件:里面有鸿蒙安装软件包和win运行程序
通过百度网盘分享的文件:HShare
链接:https://pan.baidu.com/s/1QzM9DZDdGNnqESDweKPt-g?pwd=1234
提取码:1234
复制这段内容打开「百度网盘APP即可获取」

免费评分

参与人数 1吾爱币 +1 热心值 +1 收起 理由
whit15 + 1 + 1 谢谢@Thanks!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

沙发
wcx0911 发表于 2026-7-13 13:26
具体有什么用。华为自带的不好用么? 手机直接插上usb到电脑会有充电模式 和传输模式 等其他模式。你这又什么区别么?
3#
 楼主| lm339lm 发表于 2026-7-13 14:03 |楼主
wcx0911 发表于 2026-7-13 13:26
具体有什么用。华为自带的不好用么? 手机直接插上usb到电脑会有充电模式 和传输模式 等其他模式。你这又什 ...

我需要鸿蒙电脑来远程控制windows电脑,为了无延迟所以用USB来链接。鸿蒙PC没有USB共享网络,只能采用这样的通道来实现。
4#
 楼主| lm339lm 发表于 2026-7-13 14:05 |楼主
wcx0911 发表于 2026-7-13 13:26
具体有什么用。华为自带的不好用么? 手机直接插上usb到电脑会有充电模式 和传输模式 等其他模式。你这又什 ...

开发鸿蒙软件还是用win的比较多,win的开发软件链接本身就需要usb链接鸿蒙电脑测试,正好可以用来控制win
5#
dork 发表于 2026-7-13 15:29
直接网线连二端都比这省事,有种脱裤子放屁的感觉
6#
li962905857 发表于 2026-7-13 17:06
win端只有一个网卡 需要连外网 鸿蒙端不具备放网线条件 但是如果用usb线就需要链接win电脑和鸿蒙电脑 所以不能太远 如果很远的话还不如拉条网线  但如果俩电脑在一起 有一条网线也可以加个路由或者小的交换机也可以 用网线直接链接。。。。    既然能拉usb线就能拉网线。。。。emm  那就可以在完全无网络时使用 但有路由器有电就有内网。。。。。。头疼
7#
jsgyhy 发表于 2026-7-13 17:52
“拉一根长网线也不现实”?拉一根USB线更贵吧
8#
Suxinlan 发表于 2026-7-13 18:00
usb没有距离限制吗?
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - 52pojie.cn ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2026-7-14 06:10

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表