Windows下卸载IddSampleDriver/indirect display的方法(删除显示设置下的多余幽灵显示器)附带moonlight远程控制适配IPad屏幕分辨率的解决方案

背景

最近在使用sunshine + moonlight进行远程使用宿舍PC的时候感觉屏幕分辨率和IPad不匹配很难受,因此上网搜索了有关虚拟显示器的教程。

其中选中了使用微软官方的IddSampleDriver的方式来进行模拟。这是微软提供的示例github仓库。在实现的时候参考了这位作者的中英文博客

结果在安装完虚拟显示驱动并识别到虚拟显示器后发现显示设置多了一个显示器,不用的时候很麻烦,只能选择断开连接,而且一些设置选项比如仅在某块屏幕上显示消失了,因此有了彻底卸载显示器的需求。

失败情况

设备管理器(device manager)中卸载监视器

后来尝试了一些办法,比如最普通的在设备管理器(device manager)中卸载监视器,但是一刷新就会重新恢复

使用Display Driver Uninstaller(DDU)进安全模式卸载

这个貌似只能卸载三大显卡商的,对虚拟显示器不起作用

在另一个github仓库寻找解决办法

在寻找解决方案的时候发现了另一个使用IddSampleDriver的仓库,里面有两条issue提到了无法卸载虚拟显示器的情况,但是并没有好的解决方法。

成功方法

最后在想要放弃的时候偶然再次打开了设备管理器一条一条查看试图寻找希望,结果发现之前没注意到设备管理器列表很长可以向下滚动。然后发现在底部还有一个条目叫做显示适配器,展开后才是显示驱动,尝试卸载里面的IddSampleDriver后发现问题解决了,监视器中的设备自动消失了,显示设置中的显示器也消失了。

远程连接屏幕分辨率解决方案

虽然这一问题解决了,但远程控制还是需要解决方案,后来我又自己尝试了一些方案,发现使用英伟达控制面板可以给显示器添加自定义分辨率,设置成IPad分辨率后再使用moonlight远程连接发现能够铺满IPad屏幕了,问题完美解决。不过这样会导致电脑显示器画面被拉伸,不使用远程连接的时候要自己改回去,不过也不麻烦,而且完全不借助任何第三方工具,只需要英伟达控制面板即可。

iddsampledriver是一个驱动程序的示例代码,用于演示如何编写一个驱动程序。 驱动程序是一种软件,它允许操作系统和硬件设备之间进行通信和交互。驱动程序通常由硬件制造商或第三方开发者编写,并被加载到操作系统中,以便操作系统可以正确地使用和控制硬件设备。 iddsampledriver是一个示例驱动程序,它演示了编写一个基本的设备驱动程序的过程。它可能包括与设备通信的函数、处理硬件中断的函数以及与操作系统进行交互的代码。它通常作为教学材料或演示代码,帮助开发者了解驱动程序开发的基础知识。 在编写驱动程序时,开发者需要了解硬件设备的工作原理和规范,以及操作系统提供的驱动程序接口和功能。驱动程序需要与操作系统进行交互,以便操作系统可以正确地识别和使用设备。此外,驱动程序需要处理硬件中断、错误和异常情况,并提供相应的错误处理机制。 驱动程序的编写需要较深的硬件和操作系统知识,同时需要遵循特定的编程规范和标准。这确保了驱动程序的稳定性、安全性和兼容性。开发者通常使用C或C++编程语言来编写驱动程序,并使用开发工具和调试器进行开发和测试。 总而言之,iddsampledriver是一个示例驱动程序,用于演示如何编写一个驱动程序。它是驱动程序开发的基础,帮助开发者理解和掌握驱动程序开发的基本概念和技术。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值