Project Icon

virtual-display-rs

Rust实现的Windows虚拟显示器驱动程序

virtual-display-rs是一个用Rust开发的Windows虚拟显示器驱动程序。该项目支持创建多个虚拟显示器,每个显示器可配置不同的分辨率和刷新率。它适用于VR、远程桌面和屏幕共享等多种场景。项目还提供了一个控制应用,方便用户管理虚拟显示器。该驱动程序兼容Windows 10 2004及以上版本(仅64位系统),并附有详细的安装指南。

虚拟显示驱动程序

构建 GitHub 发布 (带过滤)

这是一个用 Rust 编写的 Windows 驱动程序,用于创建虚拟桌面。

它有许多用途,例如:

  • 用于 VR 的私人虚拟桌面
  • 用于远程桌面
  • 用于屏幕共享演示,通过第二个显示器为您提供更多工作空间
  • 在没有物理显示器的情况下获得更高分辨率(或更高刷新率)的显示(注意,您只能在软件/VR 中使用)
  • 其他用途?请告诉我!

支持:Windows 10 2004+ (仅 x64)

对于任何错误报告,请参阅调试或报告崩溃部分,以获取错误报告的崩溃信息

功能

  • 多显示器(最多 10 个)
  • 每个显示器支持多种分辨率
  • 每种分辨率支持多种刷新率
  • 用于配置所有显示器、禁用所有/单个显示器的应用程序

https://github.com/MolotovCherry/virtual-display-rs/assets/13651622/4a244e40-65d2-4c99-91f7-4e8b352e3ebe

如何安装

  1. 前往发布部分获取最新驱动程序。
  2. 下载(您可能会收到警告,只需按接受即可)
  3. 安装证书
  4. 运行 msi 安装程序
  5. 驱动程序将被安装、启动,您可以在开始菜单中找到控制应用程序的快捷方式,名为"Virtual Display Driver Control"

注意:对于安装/运行应用程序有困难的用户,请参阅 #49

如何安装便携版

  1. 前往发布部分获取最新驱动程序。
  2. 下载(您可能会收到警告,只需按接受即可)
  3. 安装证书
  4. 安装 install.reg
  5. 打开设备管理器
    • 点击列表中的任何项目
    • 转到 操作 -> 添加旧式硬件
    • 手动从列表中选择要安装的硬件 上点击下一步
    • 显示所有设备 上点击下一步
    • 点击 从磁盘安装... 并选择包含驱动程序文件的文件夹
    • 完成设置
  6. 驱动程序将被安装并启动。您在文件夹中看到的控制面板 exe 可以在任何位置使用。

可选:使用 nefcon CLI 安装驱动程序

  1. 您可能需要安装驱动程序证书
  2. 获取 nefconc CLI
  1. nefconc.exe 放入解压后的便携文件夹
  2. 在此文件夹中打开控制台并运行:
.\nefconc.exe --remove-device-node --hardware-id Root\VirtualDisplayDriver --class-guid "4D36E968-E325-11CE-BFC1-08002BE10318"
.\nefconc.exe --create-device-node --class-name Display --class-guid "4D36E968-E325-11CE-BFC1-08002BE10318" --hardware-id Root\VirtualDisplayDriver
.\nefconc.exe --install-driver --inf-path ".\VirtualDisplayDriver.inf"

您也可以通过执行第一个命令来完全卸载驱动程序:

.\nefconc.exe --remove-device-node --hardware-id Root\VirtualDisplayDriver --class-guid "4D36E968-E325-11CE-BFC1-08002BE10318"

安装证书

需要安装证书以使 Windows 接受驱动程序

  1. 在您下载的 zip 文件中,有一个文件 DriverCertificate.cerinstall-cert.bat
  2. 以管理员身份打开 cmd 提示符并运行 install-cert.bat
  3. 验证证书是否正确安装。*

* 如果证书没有正确安装,则驱动程序将无法安装。如果驱动程序安装失败,这很可能是原因;您应该检查证书是否确实已安装。尝试在管理员 cmd 提示符中手动运行 install-cert.bat 文件中的命令(如下),以确保证书正确安装(对于根和 TrustedPublisher 存储)。命令将告诉您是否成功添加。

certutil -addstore -f root "DriverCertificate.cer"
certutil -addstore -f TrustedPublisher "DriverCertificate.cer"

您还可以搜索 管理计算机证书,查看 受信任的发布者受信任的根证书颁发机构,您会看到名为 DriverCertficate 的证书。

image 您可以通过右键点击菜单项 -> "所有任务" -> "导入",然后按照导入向导中的说明手动导入。

图片

为什么这么复杂?我没有添加自动证书安装的原因是因为我认为证书是个人隐私,不应该在用户不知情的情况下自动添加。

更新

  1. 下载新版本
  2. 安装msi安装包

使用应用

请查看维基获取应用使用说明。

如何构建

  1. 下载并安装Visual Studio(使用2022版本)
    • 选择并安装"使用C++的桌面开发"工作负载以及Windows SDK
  2. 安装WDK
  3. 如果没有的话,安装cargo-make
  4. 安装cargo-target-dir

确保生成自己的Windows代码签名证书,并按照"安装证书"部分进行安装。

您可以使用cargo make build(调试版)或cargo make -p prod build(发布版)进行构建,然后在target/output目录中查看所有文件。

要构建安装程序,请执行cargo make build-installer(开发版)或cargo make -p prod build-installer(发布版)。为了构建安装程序,您需要安装wix toolset并将其添加到Path中。

...或者,fork我的项目并使用github actions构建。您需要两个仓库密钥:

  • PRIVATE_KEY - 一个base64编码的Windows代码签名pfx证书(使用certutil -encode
  • PRIVATE_KEY_PASSWORD - 不言自明

调试或报告崩溃

如果您想调试问题或需要报告崩溃,请按照以下说明操作:

驱动程序的所有消息都记录在Windows事件查看器中。

  1. 打开事件查看器
  2. 转到"Windows日志" -> "应用程序"
  3. 您将在源名称"VirtualDisplayDriver"下看到驱动程序的日志

如果您想让它们更容易查看:

  1. 右键单击"自定义视图"
    • 点击"创建自定义视图..."
      • 选择"按源"
      • 在列表中找到并选择"VirtualDisplayDriver",然后按"确定"
      • 输入"VirtualDisplayDriver"作为名称,然后按"确定"
  2. 现在您应该可以在"自定义视图"部分的"VirtualDisplayDriver"下看到任何日志消息

如果您使用的是以调试模式编译的驱动程序,您可以在实时日志记录器中看到崩溃消息和其他信息:下载DebugViewPP,运行它,点击"Log"->"Capture Global Win32"(注意,这需要以管理员权限运行DebugViewPP)。只要程序打开并捕获,消息就会在记录时实时显示。在尝试调试某些内容时,这比使用事件日志更容易。

贡献

欢迎所有贡献!

对于首次贡献者,请阅读我们的贡献指南

分叉或在其他项目中使用

欢迎您在自己的项目中使用本项目。

如果这样做,请将您的代码更改贡献回主项目,甚至可以通过赞助支持我们。每一点帮助都能让我们做出更好的项目。我们感谢您的支持,谢谢!

在哪里交流或获取帮助

如果您有任何问题、需要支持、需要协作开发或任何其他用途,您可以加入我们的Discord服务器(查看相关的#virtual-display-driver频道)。这是最快捷、最简单的沟通方式。

您也可以在项目的讨论部分发帖。但请注意,使用Discord频道会更快地看到并回复您的消息。

支持项目

如果这个项目对您有帮助,或者您想表示感谢并帮助持续开发,欢迎赞助。❤️

项目侧边栏1项目侧边栏2
推荐项目
Project Cover

豆包MarsCode

豆包 MarsCode 是一款革命性的编程助手,通过AI技术提供代码补全、单测生成、代码解释和智能问答等功能,支持100+编程语言,与主流编辑器无缝集成,显著提升开发效率和代码质量。

Project Cover

AI写歌

Suno AI是一个革命性的AI音乐创作平台,能在短短30秒内帮助用户创作出一首完整的歌曲。无论是寻找创作灵感还是需要快速制作音乐,Suno AI都是音乐爱好者和专业人士的理想选择。

Project Cover

有言AI

有言平台提供一站式AIGC视频创作解决方案,通过智能技术简化视频制作流程。无论是企业宣传还是个人分享,有言都能帮助用户快速、轻松地制作出专业级别的视频内容。

Project Cover

Kimi

Kimi AI助手提供多语言对话支持,能够阅读和理解用户上传的文件内容,解析网页信息,并结合搜索结果为用户提供详尽的答案。无论是日常咨询还是专业问题,Kimi都能以友好、专业的方式提供帮助。

Project Cover

阿里绘蛙

绘蛙是阿里巴巴集团推出的革命性AI电商营销平台。利用尖端人工智能技术,为商家提供一键生成商品图和营销文案的服务,显著提升内容创作效率和营销效果。适用于淘宝、天猫等电商平台,让商品第一时间被种草。

Project Cover

吐司

探索Tensor.Art平台的独特AI模型,免费访问各种图像生成与AI训练工具,从Stable Diffusion等基础模型开始,轻松实现创新图像生成。体验前沿的AI技术,推动个人和企业的创新发展。

Project Cover

SubCat字幕猫

SubCat字幕猫APP是一款创新的视频播放器,它将改变您观看视频的方式!SubCat结合了先进的人工智能技术,为您提供即时视频字幕翻译,无论是本地视频还是网络流媒体,让您轻松享受各种语言的内容。

Project Cover

美间AI

美间AI创意设计平台,利用前沿AI技术,为设计师和营销人员提供一站式设计解决方案。从智能海报到3D效果图,再到文案生成,美间让创意设计更简单、更高效。

Project Cover

AIWritePaper论文写作

AIWritePaper论文写作是一站式AI论文写作辅助工具,简化了选题、文献检索至论文撰写的整个过程。通过简单设定,平台可快速生成高质量论文大纲和全文,配合图表、参考文献等一应俱全,同时提供开题报告和答辩PPT等增值服务,保障数据安全,有效提升写作效率和论文质量。

投诉举报邮箱: service@vectorlightyear.com
@2024 懂AI·鲁ICP备2024100362号-6·鲁公网安备37021002001498号