当前位置: 首页 > news >正文

平板作为主机扩展屏的实现

网上有许多教程使用平板作为电脑的拓展屏,但是多数都是需要在电脑和平板上都装上服务器和客户端的软件才行,而且有些系统还没有对应的软件。
那有没有一种方法只需要在主机上运行一个软件,而平板上只需要扫个码就行呢?
答案是当然有,主要是借助deskreen实现Linxu,MAC和Window三大系统在众多平板上无差别投屏扩展。

一、使用deskreen进行投屏

首先去github网站或者deskreen官网下载对应系统支持的包格式,如windows下载exe文件,ubuntu则下载deb包

deskreen下载

使用 Deskreen 需要把所有设备连接到同一个 Wi-Fi,电脑端下载 Deskreen 软件,支持 Windows、Mac、Linux,以ubuntu的安装为例:

  1. 打开中断运行:
#后面deb换成你下载的那个deskreen的包名
sudo dpkg -i deskreen_2.0.4_amd64.deb
  1. 只要没有报错可以运行下面的命令启动deskreen
deskreen

运行成功后会有个二维码界面,这个时候只需要使用对应的平板安卓设备的浏览器扫码就可以进行连接,并实现屏幕扩展。

注意并不是所有浏览器都可以,如果不行请下载一个第三方浏览器,谷歌,火狐亲测都可用。

到此,电脑和平板在同一局域网内,就已经可以实现电脑界面投屏到手机或者平板了,但是如果想要手机和平板作为拓展屏,还需要进行后文的操作。

最简单的方法是淘宝买一个虚拟显示适配器了,这个基本就是欺骗系统让它以为当前主机存在多个显示器。

而作为穷人的我,只能使用软件虚拟一个显示器作为替代了,后面两节就分别基于Linux和windows的扩展屏幕简单介绍一下方法。


二、为Linux创建虚拟屏幕

在Linux上,使用xrandr创建一个可以作为额外监视器广播的虚拟显示器非常容易,不需要额外的驱动程序或虚拟插头,具体操作如下:

  1. 首先,运行以下命令:
#我的Ubuntu默认就装了这个软件
xrandr

获得下面的输出

DisplayPort-0 disconnected (normal left inverted right x axis y axis)DisplayPort-1 disconnected (normal left inverted right x axis y axis)DisplayPort-2 disconnected (normal left inverted right x axis y axis)HDMI-A-0 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 521mm x 293mm1920x1080     60.00*+  71.91    50.00    59.94  1680x1050     59.88  1600x900      60.00  1280x1024     60.02  1440x900      59.90  1280x800      59.91  1280x720      60.00    50.00    59.94  1024x768      70.07    60.00  800x600       72.19    60.32    56.25  720x576       50.00  720x480       60.00    59.94  640x480       72.81    66.67    60.00    59.94  720x400       70.08  DVI-D-0 disconnected (normal left inverted right x axis y axis)1920x1080     60.00  DP-1-5 connected 1920x1080+1920+0 (normal left inverted right x axis y axis) 531mm x 299mm1920x1080     60.00*+1680x1050     59.88  1280x1024     75.02    60.02  1440x900      74.98    59.90  1280x960      60.00  1280x800      59.91  1152x864      75.00  1024x768      75.03    70.07    60.00  832x624       74.55  800x600       72.19    75.00    60.32    56.25  640x480       75.00    72.81    66.67    59.94  720x400       70.08  DP-1-6 disconnected (normal left inverted right x axis y axis)

其中connected是已经链接了显示器的,这里选择一个没有链接的输出,比如DVI-D-0

  1. 如果没有输出模式,可以用下面的命令添加
xrandr --addmode DVI-D-0 1920x1080
# you may use the output you selected and the resolution you want
  1. 下一步是确定新显示器的位置,如果想将虚拟显示器放置在主显示器(即HDMI-A-0)的左侧,运行以下命令:
xrandr --output DVI-D-0 --mode 1920x1080 --left-of HDMI-A-0# replace DVI-D-0 with the virtual output you selected
# and 1920x1080 with the resolution you chose on the previous command# other options are --right-of, --above and --below
  1. 然后运行deskreen就可以看到设置的拓展屏了

  2. 如果需要关闭那个显示器,使用如下的方法即可关闭对应的显示器

xrandr --output DVI-D-0 --off

三、Windows下虚拟

不像Linux上可以用软件直接设置,这个方法也是参照别人的贴子实现的,首先下载下面的这个驱动软件(usbmmidd):

usbmmidd下载

  1. 安装与使能
    把这个软件包解压到根目录,目录改简单点,然后以管理员身份打开命令提示符,输入如下命令:
#下面就是你解压的目录
cd c:\temp\usbmmid_v2 
deviceinstaller64 install usbmmidd.inf usbmmidd
#如果提示install 成功就执行下面一条
deviceinstaller64 enableidd 1

想在Windows 10中添加4个虚拟显示器,最多可以运行最后一条命令4次。

如果你使用的是32位系统,将"deviceinstaller64"替换为"deviceinstaller"

其实压缩文件里包含usbmmid.bat批处理文件的话,可以右击以管理员身份执行,就会自动运行这些命令,并在32位或64位版本的设备安装程序之间进行选择。

  1. 打开关闭和删除
#要停用虚拟监视器,请运行以下命令:
#如果添加了多个虚拟显示器,请多次运行此命令
deviceinstaller64 enableidd 0#重新激活:
deviceinstaller64 enableidd 1
# 要从系统中完全删除驱动程序,您可以通过设备管理器并卸载“USB Mobile Monitor Virtual Display”,或运行以下命令:
deviceinstaller64 stop usbmmidd
deviceinstaller64 remove usbmmid

参考:
给电脑增加一个扩展屏
如何使用移动设备作为 Linux 副屏
Linux虚拟屏幕

相关文章:

平板作为主机扩展屏的实现

网上有许多教程使用平板作为电脑的拓展屏,但是多数都是需要在电脑和平板上都装上服务器和客户端的软件才行,而且有些系统还没有对应的软件。 那有没有一种方法只需要在主机上运行一个软件,而平板上只需要扫个码就行呢? 答案是当然…...

HTTP和HTTPS有什么区别?如何实现网站的HTTPS?

细心的朋友会发现,我们在浏览网站时,有的网址以http开头,而有的网站却以https开头,那这两者之间有什么区别吗?http的网站如何能变成https呢?本文中科三方针对这个问题做下简单介绍。 什么是http&#xff1…...

Rockstar Games遭黑客攻击,《侠盗猎车手6》90个开发视频外泄

当地时间9月19日,视频游戏开发商Rockstar Games证实,其 热门游戏《侠盗猎车手6》(Grand Theft Auto)开发片段遭到黑客大规模窃取 ,这一泄露事件立即在游戏圈迅速传播。 据报道, 上周末黑客至少泄露了90个游…...

RabbitMQ-客户端源码之AMQPImpl+Method

AMQPImpl类包括AMQP接口(public class AMQImpl implements AMQP)主要囊括了AMQP协议中的通信帧的类别。 这里以Connection.Start帧做一个例子。 public static class Connection {public static final int INDEX 10;public static class Startextends…...

雅思经验(7)

我发现雅思阅读要命的不是难度,而是时间的把控。考试时间是总共一小时,但是要写三篇文章,之后总共40道题目,也就是说每篇文章平均是13.3道。但是他们很多人说,如果誊写答案需要花掉3、4分钟每篇,也就是说真…...

Ubuntu20.04 用 `hwclock` 或 `timedatectl` 设置RTC硬件时钟为本地时区

Ubuntu20.04用 hwclock 或 timedatectl 设置硬件时区为本地时区 可以用hwclock命令 sudo hwclock --localtime --systohc👆效果等同👇 , --localtime的简写是-l ; --systohc的简写是-w sudo hwclock -l -w也可以用timedatectl命令 👆效果等…...

大学物理·第15章【量子物理】

黑体 斯特藩玻耳兹曼定律 维恩定律 光电效应 在光照射下 ,电子从金属表面逸出的现象,叫光电效应. 逸出的电子,叫光电子 经典理论: 光电流值与入射光强成正比截止频率(红限)v0对某种金属来说,只有…...

2010-2019年290个地级市经济发展与城市绿化数据

2010-2019年290个地级市经济发展与城市绿化数据 1、时间:2010-2019年 2、来源:城市统计NJ,缺失情况与NJ一致 3、范围:290个地级市 4、指标: 综合经济:地区生产总值、人均地区生产总值、地区生产总值增…...

【CSS 布局】-多列布局

一、两列布局 两列布局&#xff1a;一列定宽(也有可能由子元素决定宽度)&#xff0c;一列自适应的布局。 创建一个父盒子&#xff0c;和子盒子 <div class"container clearfix"><div class"left ">定宽</div><div class"right…...

从C语言向C++过渡

文章目录前言1.命名空间1.域的概念2.命名空间的使用2.C输入&输出3.缺省参数1.概念2.分类3.注意事项4.函数重载5.引用1.概念2.使用注意事项3.引用使用场景4.指针和引用的区别6.内联函数7.auto关键字8.nullptr前言 C被成为带类的C,本文由C语言向C过度&#xff0c;将会初步介…...

Matter 研讨会回顾(第三期)|乐鑫 Matter 免开发方案与证书服务介绍

1 月 17 日&#xff0c;乐鑫举办了以“乐鑫 Matter 免开发方案与证书服务介绍”为主题的第三期 Matter 线上研讨会&#xff0c;介绍乐鑫开箱即用的 ESP-ZeroCode 模组及其免开发 Matter 方案&#xff0c;以及证书生成和预配置相关服务。欢迎观看研讨会的视频回放了解详情。&…...

函数栈帧的创建和销毁——“C”

各位CSDN的uu们你们好呀&#xff0c;今天小雅兰来为大家介绍一个知识点——函数栈帧的创建和销毁。其实这个知识点&#xff0c;我们很早之前就要讲&#xff0c;但是因为我的一系列原因&#xff0c;才一直拖到了现在&#xff0c;那么&#xff0c;话不多说&#xff0c;让我们一起…...

腾讯云对象存储+企业网盘 打通数据链“最后一公里

对云厂商和企业用户来说&#xff0c;随着数据规模的快速增长&#xff0c;企业除了对存储功能和性能的要求不断增加&#xff0c;也越来越注重数据分发的效率。在传统数据分发的过程中&#xff0c;数据管理员往往需要先在存储桶下载对应的客户方案/交付资料&#xff0c;再使用微信…...

在浏览器输入url到发起http请求,这过程发生了什么

当用户输入url&#xff0c;操作系统会将输入事件传递到浏览器中&#xff0c;在这过程中&#xff0c;浏览器可能会做一些预处理&#xff0c;比如 Chrome 会根据历史统计来预估所输入字符对应的网站&#xff0c;例如输入goog&#xff0c;根据之前的历史发现 90% 的概率会访问「ww…...

PyTorch学习笔记:nn.ReLU——ReLU激活函数

PyTorch学习笔记&#xff1a;nn.ReLU——ReLU激活函数 torch.nn.ReLU(inplaceFalse)功能&#xff1a;逐元素应用ReLU函数对数据进行激活 函数方程&#xff1a; ReLU(x)(x)max⁡(0,x)ReLU(x)(x)^\max(0,x) ReLU(x)(x)max(0,x) 输入&#xff1a; inplace&#xff1a;是否改变输…...

同步线程

↵ 由于这节内容资料比较少&#xff0c;所以以下内容总结自Qt官方文献&#xff0c;在文章最后会给出相应链接。 线程的目的是允许并行运行&#xff0c;但有时线程必须停止等待其他线程。例如&#xff0c;如果两个线程尝试访问同一个变量&#xff0c;这样的话结果是未定义的。强…...

服务端返回内容跨域CORS之后,也在chrome/edge浏览器里显示出响应信息

由于浏览器的同源策略&#xff0c;服务端返回的内容跨域&#xff0c;且没有允许跨域CORS的请求头之后&#xff0c;浏览器无法显示出服务端返回的信息&#xff0c;不方便问题排查。比如&#xff1a;Access to XMLHttpRequest at http://localhost:6001/service-app/query/common…...

DHCP中继及配置

为什么需要DHCP Relay&#xff1f;产生背景解决方案DHCP Relay工作原理DHCP Relay配置实现产生背景 随着网络规模的扩大&#xff0c;网络中就会出现用户处于不同网段的情况。 这个时候客户A和客户B要请求IP地址时&#xff0c;首先会发送DHCP Discover广播包&#xff0c;这个广…...

中国社科院与美国杜兰大学金融管理硕士,让我们相遇在春暖花开时

在芸芸众生中&#xff0c;能拥有志同道合的朋友是一件多么幸运的事。人们常说&#xff1a;你是谁&#xff0c;就会遇见谁。走过半生才知道&#xff0c;看似命中注定的遇见谁、发生的事&#xff0c;其实都取决于自己。只有自己足够优秀&#xff0c;才能遇到更优秀的别人。在这个…...

MySQL---单表查询、多表查询

一、单表查询 素材&#xff1a; 表名&#xff1a;worker-- 表中字段均为中文&#xff0c;比如 部门号 工资 职工号 参加工作 等 CREATE TABLE worker ( 部门号 int(11) NOT NULL, 职工号 int(11) NOT NULL, 工作时间 date NOT NULL, 工资 float(8,2) NOT NULL, 政治面貌 v…...

Java 语言特性(面试系列1)

一、面向对象编程 1. 封装&#xff08;Encapsulation&#xff09; 定义&#xff1a;将数据&#xff08;属性&#xff09;和操作数据的方法绑定在一起&#xff0c;通过访问控制符&#xff08;private、protected、public&#xff09;隐藏内部实现细节。示例&#xff1a; public …...

3.3.1_1 检错编码(奇偶校验码)

从这节课开始&#xff0c;我们会探讨数据链路层的差错控制功能&#xff0c;差错控制功能的主要目标是要发现并且解决一个帧内部的位错误&#xff0c;我们需要使用特殊的编码技术去发现帧内部的位错误&#xff0c;当我们发现位错误之后&#xff0c;通常来说有两种解决方案。第一…...

电脑插入多块移动硬盘后经常出现卡顿和蓝屏

当电脑在插入多块移动硬盘后频繁出现卡顿和蓝屏问题时&#xff0c;可能涉及硬件资源冲突、驱动兼容性、供电不足或系统设置等多方面原因。以下是逐步排查和解决方案&#xff1a; 1. 检查电源供电问题 问题原因&#xff1a;多块移动硬盘同时运行可能导致USB接口供电不足&#x…...

剑指offer20_链表中环的入口节点

链表中环的入口节点 给定一个链表&#xff0c;若其中包含环&#xff0c;则输出环的入口节点。 若其中不包含环&#xff0c;则输出null。 数据范围 节点 val 值取值范围 [ 1 , 1000 ] [1,1000] [1,1000]。 节点 val 值各不相同。 链表长度 [ 0 , 500 ] [0,500] [0,500]。 …...

04-初识css

一、css样式引入 1.1.内部样式 <div style"width: 100px;"></div>1.2.外部样式 1.2.1.外部样式1 <style>.aa {width: 100px;} </style> <div class"aa"></div>1.2.2.外部样式2 <!-- rel内表面引入的是style样…...

【HTML-16】深入理解HTML中的块元素与行内元素

HTML元素根据其显示特性可以分为两大类&#xff1a;块元素(Block-level Elements)和行内元素(Inline Elements)。理解这两者的区别对于构建良好的网页布局至关重要。本文将全面解析这两种元素的特性、区别以及实际应用场景。 1. 块元素(Block-level Elements) 1.1 基本特性 …...

Android15默认授权浮窗权限

我们经常有那种需求&#xff0c;客户需要定制的apk集成在ROM中&#xff0c;并且默认授予其【显示在其他应用的上层】权限&#xff0c;也就是我们常说的浮窗权限&#xff0c;那么我们就可以通过以下方法在wms、ams等系统服务的systemReady()方法中调用即可实现预置应用默认授权浮…...

爬虫基础学习day2

# 爬虫设计领域 工商&#xff1a;企查查、天眼查短视频&#xff1a;抖音、快手、西瓜 ---> 飞瓜电商&#xff1a;京东、淘宝、聚美优品、亚马逊 ---> 分析店铺经营决策标题、排名航空&#xff1a;抓取所有航空公司价格 ---> 去哪儿自媒体&#xff1a;采集自媒体数据进…...

聊一聊接口测试的意义有哪些?

目录 一、隔离性 & 早期测试 二、保障系统集成质量 三、验证业务逻辑的核心层 四、提升测试效率与覆盖度 五、系统稳定性的守护者 六、驱动团队协作与契约管理 七、性能与扩展性的前置评估 八、持续交付的核心支撑 接口测试的意义可以从四个维度展开&#xff0c;首…...

Spring Cloud Gateway 中自定义验证码接口返回 404 的排查与解决

Spring Cloud Gateway 中自定义验证码接口返回 404 的排查与解决 问题背景 在一个基于 Spring Cloud Gateway WebFlux 构建的微服务项目中&#xff0c;新增了一个本地验证码接口 /code&#xff0c;使用函数式路由&#xff08;RouterFunction&#xff09;和 Hutool 的 Circle…...