Repository navigation
Show and tell: using Virtual-Display-Driver to turn an Android phone into a second monitor #515
vensilver
started this conversation in
Show and tell
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Hi! 👋 Just wanted to say thank you and show what we built on top of Virtual-Display-Driver.
I make Remote Mouse & Keyboard | AX, an Android app that turns a phone into a
mouse, keyboard, webcam and mic for a Windows PC over Wi-Fi. The latest update adds
a Second display feature: the phone becomes an extra monitor that Windows can
extend the desktop onto, with the pointer working on it. VDD is what makes that
possible.
Why VDD: Windows has no user-mode way for an ordinary app to add a monitor, so
it needs an IddCx driver. Writing and signing our own would have meant attestation
and maintaining a driver forever. VDD being MIT licensed and properly signed
(no test-signing, no root certificates) made it the clear choice over the older
IddSampleDriver forks.
How we use it:
Root\MttVDD), and if it'smissing, it walks the user through installing it from your Releases page.
resolution to
vdd_settings.xmland uses\\.\pipe\MTTVirtualDisplayPipe(
PING/SETDISPLAYCOUNT) to attach the monitor, then detaches it when thesession ends. Nice bonus: this all works without elevation.
phone becomes pointer input on that display.
A few things we ran into, in case they help anyone else integrating with the pipe:
ERROR_BROKEN_PIPE(109) orERROR_PIPE_NOT_CONNECTED(233), not as a cleanend-of-file, so a working pipe can look like a missing one.
ERROR_PIPE_BUSY(231), so clients need to wait and retry.reinstall.
Links:
Thanks again for maintaining this. It saved us weeks and a lot of driver-signing
pain. Happy to share more details or test anything on our side. 🙏
All reactions