DPI Problem with two monitors and Remote Desktop
Moderators: Hacker, petermad, Stefan2, white
DPI Problem with two monitors and Remote Desktop
I have found a rather minor bug with the new DPI system:
If there are two monitors with different DPIs, and one connects with RDP to the computer, then TC does not recognize the DPI/Monitor(?) change for the instance that was on the secondary screen.
Edit: I'm not allowed to send URLs, so I send it in this form:
pasteboard.co/GSwQ5C5.png
If there are two monitors with different DPIs, and one connects with RDP to the computer, then TC does not recognize the DPI/Monitor(?) change for the instance that was on the secondary screen.
Edit: I'm not allowed to send URLs, so I send it in this form:
pasteboard.co/GSwQ5C5.png
- ghisler(Author)
- Site Admin
- Posts: 50550
- Joined: 2003-02-04, 09:46 UTC
- Location: Switzerland
- Contact:
Sorry, I don't quite understand. How can you RDP with just one monitor? And is TC running in the RDP session, or locally? Is that possible at all? How do I set this up?
Author of Total Commander
https://www.ghisler.com
https://www.ghisler.com
Excuse me I was not clear!
The setup:
Computer A:
Monitor 1: A 4K HiDPI Monitor (main monitor)
Monitor 2: A normal Full HD Monitor
Total Commander is running on this computer. (In actually more instances)
Computer B:
There is a single 2.5K monitor, with a DPI setting different from both Monitor 1 and 2 on Computer A.
I've connected from Computer B to Computer A:
As on Computer B there is only one monitor, the RDP Server on Computer A has put all of the windows from Monitor 1 and Monitor 2 to the single Remote Desktop virtual monitor (RDP works a bit differently as e.g. TeamViewer).
This means also a DPI change, what however wasn't detected by Total Commander apparently. I'm not sure, which TC instance on the screenshot is from which monitor, but for one of them the scaling was right, for the other one not.
And just to emphasize: On the attached screenshot: Both of the Total Commander instances are running on Computer A, I have taken the screenshot of them while connected to Computer A from Computer B.
The setup:
Computer A:
Monitor 1: A 4K HiDPI Monitor (main monitor)
Monitor 2: A normal Full HD Monitor
Total Commander is running on this computer. (In actually more instances)
Computer B:
There is a single 2.5K monitor, with a DPI setting different from both Monitor 1 and 2 on Computer A.
I've connected from Computer B to Computer A:
As on Computer B there is only one monitor, the RDP Server on Computer A has put all of the windows from Monitor 1 and Monitor 2 to the single Remote Desktop virtual monitor (RDP works a bit differently as e.g. TeamViewer).
This means also a DPI change, what however wasn't detected by Total Commander apparently. I'm not sure, which TC instance on the screenshot is from which monitor, but for one of them the scaling was right, for the other one not.
And just to emphasize: On the attached screenshot: Both of the Total Commander instances are running on Computer A, I have taken the screenshot of them while connected to Computer A from Computer B.
- ghisler(Author)
- Site Admin
- Posts: 50550
- Joined: 2003-02-04, 09:46 UTC
- Location: Switzerland
- Contact:
Unfortunately I couldn't reproduce the problem, neither with TC 9.12 RC2 nor RC3.
Here is what I tried:
Target PC: Windows 10 (Fall Creators) with 2 screens: Both are 1920x1080, the primary at 150% scale, the secondary at 125% scale.
Started TC 32-bit and 64-bit. First saved position on 140DPI primary screen,and in a second test,
I'm using "Remote desktop connection" from Windows 7 to this Windows 10 machine. Scale is set to 100% on this computer (96DPI).
When I connect, I get logged out on the Windows 10 computer. Both TC 32-bit and TC 64-bit resize to the new 96dpi.
What scale factors do you use on the 4K HiDPI monitor and the full HD monitor on Computer A? And what scale factor do you use on Computer B?
Here is what I tried:
Target PC: Windows 10 (Fall Creators) with 2 screens: Both are 1920x1080, the primary at 150% scale, the secondary at 125% scale.
Started TC 32-bit and 64-bit. First saved position on 140DPI primary screen,and in a second test,
I'm using "Remote desktop connection" from Windows 7 to this Windows 10 machine. Scale is set to 100% on this computer (96DPI).
When I connect, I get logged out on the Windows 10 computer. Both TC 32-bit and TC 64-bit resize to the new 96dpi.
What scale factors do you use on the 4K HiDPI monitor and the full HD monitor on Computer A? And what scale factor do you use on Computer B?
Author of Total Commander
https://www.ghisler.com
https://www.ghisler.com
Computer A:
4k monitor: 150%
FullHD: 100%
Computer B: 100%
Now I have tried it as well, and I was able to reproduce it on the ~6th try.
I assume it is rather a Windows Bug, that it is not sending out the DPICHANGE message correctly in some cases.
Also, I've only the creators update (1703), maybe this got fixed in the Fall Creators Update.
4k monitor: 150%
FullHD: 100%
Computer B: 100%
Now I have tried it as well, and I was able to reproduce it on the ~6th try.
I assume it is rather a Windows Bug, that it is not sending out the DPICHANGE message correctly in some cases.
Also, I've only the creators update (1703), maybe this got fixed in the Fall Creators Update.
- ghisler(Author)
- Site Admin
- Posts: 50550
- Joined: 2003-02-04, 09:46 UTC
- Location: Switzerland
- Contact:
It's probably because the FullHD monitor has the same scale factor as Computer B. I have tried that too now, but TC resizes just fine. It could indeed be a problem with missing WM_DPICHANGE message. Is it correct after closing and re-opening TC?
Author of Total Commander
https://www.ghisler.com
https://www.ghisler.com
- ghisler(Author)
- Site Admin
- Posts: 50550
- Joined: 2003-02-04, 09:46 UTC
- Location: Switzerland
- Contact:
I will try to add some code which resizes TC when the window size doesn't change, but the DPI change. But I cannot promise anything...
Author of Total Commander
https://www.ghisler.com
https://www.ghisler.com