itsmikethetech / Virtual-Display-Driver

Add virtual monitors to your windows 10/11 device! Works with VR, OBS, Sunshine, and/or any desktop sharing software.
1.97k stars 89 forks source link

On reboot Virtual display makes itself my “Main Monitor” in display settings #31

Open Night1099 opened 5 months ago

Night1099 commented 5 months ago

Because of this all windows open on the display i cant see and i have to use remote desktop or disable device temporarily to use computer on every startup

windows 11 hdr most recent version

Ckleinloog commented 5 months ago

i encountered the same behavior. After successfully installing the iddsampledriver HDR and using Moonlight, the Display Settings are not sticking. By that I mean, I set "PC Screen Only" using Win+P after the gaming session and shutdown. On reboot where you enter the Win11 PIN, the laptop screen is black and the display is on external screen. So I have to blind type my PIN and use Win+P blind to cycle to show my laptop screen again.

I tried several times and cant get it the setting to stick. Any Ideas please if there are settings that I missed to change this behavior or is a bug? Many thanks.

Edit: Asus TUF F15 - RTX3050 (31.0.15.5123) - Win11 22H2

sukuoru commented 2 months ago

I also have this issue. Clean install of Windows 11, got a virtual display set up and working with Sunshine. However, on restart I see a black screen, and can see the LED for Windows Hello flashing. Once logged in, still seeing a black screen. Win+P will switch, and it seems like it's coming out of 640x480 or another low resolution on switch. I should note that I am in the normal profile when I shutdown, but on startup it behaves as if the Virtual Display is on, and set as the main display. After changing profiles with a bat file, or Win+P, it shows my Internal Display as the main monitor.

A workaround is to create a .bat file in my startup folder ( Win+R then shell:startup ) to load the "Default" profile from MonitorSwitcher. Example:

@ECHO OFF
C:\Users{Your User Here}\Desktop\Games\GameStreaming\MonitorSwitcher\MonitorSwitcher.exe -load:C:\Users{Your User Here}\AppData\Roaming\MonitorSwitcher\Profiles\desktop.xml

If the username has spaces, you can use: "C:\Users{Your User Here}\Desktop\Games\GameStreaming\MonitorSwitcher\MonitorSwitcher.exe" "-load:C:\Users{Your User Here}\AppData\Roaming\MonitorSwitcher\Profiles\desktop.xml"

Hoping this information can help others, but also lead to a fix.

zjoasan commented 2 months ago

The way i would solve this is to disable the device before shutdown. I've been playing with some powershell-scripting, and using two modules from powershell gallery I've built some scripts to enable/disable the device, change resolution / toogle hdr /change orientation. These scripts should be available under dynamic-edid branch: https://github.com/itsmikethetech/Virtual-Display-Driver/tree/DynamicEdid/scripts These scripts have a "MTT1337" as the identifier(as in the coming version of the driver), you have to edit the scripts and replace he "MTT1337" with "LNX0000" if my memory serves me right. Then you add a login/out script that runs toogleVDD script.

Alternatively if you just need the tooglePWR, that script for current stable version is located in Community scripts here on github, I do believe it's for the current Release version.

Good luck

bud3699 commented 2 months ago

I'll try reproduce the issue, I believe it was caused by multiple drivers being installed onto the system. Cant remember, if i can reproduce the issue it would help a lot in order to identify the problem

Jocke you can help me with that if you want

Ckleinloog commented 2 months ago

The way i would solve this is to disable the device before shutdown. I've been playing with some powershell-scripting, and using two modules from powershell gallery I've built some scripts to enable/disable the device, change resolution / toogle hdr /change orientation. These scripts should be available under dynamic-edid branch: https://github.com/itsmikethetech/Virtual-Display-Driver/tree/DynamicEdid/scripts These scripts have a "MTT1337" as the identifier(as in the coming version of the driver), you have to edit the scripts and replace he "MTT1337" with "LNX0000" if my memory serves me right. Then you add a login/out script that runs toogleVDD script.

Alternatively if you just need the tooglePWR, that script for current stable version is located in Community scripts here on github, I do believe it's for the current Release version.

Good luck

I have run the toggle-VDD.ps1 script as a Do/Undo command when Sunshine starts/stops and can confirm this is a good workaround for now. I dont have enough IT knowledge to figure out how run the script on logon/logoff and bypass all WIn11 security features. Thank you