Closed davidknaack closed 9 years ago
It looks like this may just be a limitation of the method used to access wallpaper info. On Win 8.1/2012 the IDesktopWallpaper API provides information about the images currently appearing on each desktop. It might be possible to access it in the TranscodedImageCache_nnn reg keys too. Not sure how to go about mapping a monitor to a a TranscodedImageCache_nnn entry though.
Anyway, I'm guessing this is not a bug, just not a feature.
It might be possible to access it in the TranscodedImageCache_nnn reg keys too. Not sure how to go about mapping a monitor to a a TranscodedImageCache_nnn entry though.
I use this mechanic. You can read the code. But sometimes data in registry are wrong, desynchronized or missing. My code is purely empirical. Perhaps you have a specific configuration. Can you provide a screen shot of the desktop, the monitors configuration and a dump of HKEY_CURRENT_USER\Control Panel\Desktop registry key?
On Win 8.1/2012 the IDesktopWallpaper API provides information about the images currently appearing on each desktop.
I didn't know the IDesktopWallpaper API. It's only available since Windows 8 and slideshow/multiple monitors are available since Windows 7.
Windows has definitely become confused about the monitor layout, the id numbers have got some kind of issue (note the two overlaping, and one display missing an ID number, and that the layout of numbers in the Screen Resolution dialog does not match the desktop layout when the geometry matches). However, this layout weirdness started happened after the last Tuesday Windows update, while the problem with the console backgrounds not changing was occurring prior to that.
You can see in this screen shot that the images selected for backgrounds don't match up to any of the desktop images, except on the lower-right monitor, which is currently the main display, and the upper right (which may just be a coincidental match).
http://i.imgur.com/IrDZ6wL.jpg
If I use the 'Next desktop image' option in the desktop context menu the console background blanks and refreshes, but it selects the same image for the background, although that image is no longer used for any of the monitors:
http://i.imgur.com/sW1cez9.jpg
In case it's useful, here are how the images map to Transcoded_nnn names when that second screen shot was taken:
http://i.imgur.com/WubF6JS.png
Reg dump: https://gist.github.com/davidknaack/8da3c60839c64d31fb42
Transcoded Image Cache into human readable text:
"TranscodedImageCache_000"
C:\Users\david_000\AppData\Local\Microsoft\Windows\Themes\NASA Spac\DesktopBackground\2_nasaspacescapes_0006_7.jpg
\\?\DISPLAY#ACI249A#5&1cd24d1&0&UID1073984#{e6f07b5f-ee97-4a90-b076-33f57bf4eaa7}
TranscodedImageCache_001"
C:\Users\david_000\AppData\Local\Microsoft\Windows\Themes\NASA Spac\DesktopBackground\dn26748-2_1200.jpg
\\?\DISPLAY#ACI249A#5&1cd24d1&0&UID1082161#{e6f07b5f-ee97-4a90-b076-33f57bf4eaa7}
TranscodedImageCache_002"
C:\Users\david_000\AppData\Local\Microsoft\Windows\Themes\NASA Spac\DesktopBackground\1_nasaspacescapes_0011_12.jpg
\\?\DISPLAY#ACI249A#5&1cd24d1&0&UID1048832#{e6f07b5f-ee97-4a90-b076-33f57bf4eaa7}
"TranscodedImageCache_003"
C:\Users\david_000\AppData\Local\Microsoft\Windows\Themes\NASA Spac\DesktopBackground\12_nasaspacescapes_0004_5.jpg
\\?\DISPLAY#ACI249A#5&1cd24d1&0&UID3536977920#{e6f07b5f-ee97-4a90-b076-33f57bf4eaa7}
"TranscodedImageCache_004"
C:\Users\david_000\AppData\Local\Microsoft\Windows\Themes\NASA Spac\DesktopBackground\14_nasaspacescapes_0001_2.jpg
\\?\DISPLAY#ACI249A#5&1cd24d1&0&UID3536977921#{e6f07b5f-ee97-4a90-b076-33f57bf4eaa7}
"TranscodedImageCache_005"
C:\Users\david_000\AppData\Local\Microsoft\Windows\Themes\NASA Spac\DesktopBackground\8_nasaspacescapes_0009_10.jpg
\\?\DISPLAY#ACI249A#5&1cd24d1&0&UID3536977922#{e6f07b5f-ee97-4a90-b076-33f57bf4eaa7}
"TranscodedImageCache_006"
C:\Users\david_000\AppData\Local\Microsoft\Windows\Themes\NASA Spac\DesktopBackground\12_nasaspacescapes_0004_5.jpg
\\?\DISPLAY#CMO1720#5&1cd24d1&0&UID1048848#{e6f07b5f-ee97-4a90-b076-33f57bf4eaa7}
"TranscodedImageCache_007"
C:\Users\david_000\AppData\Local\Microsoft\Windows\Themes\NASA Spac\DesktopBackground\3_nasaspacescapes_0013_14.jpg
\\?\DISPLAY#NVD0000#5&1cd24d1&0&UID1073984#{e6f07b5f-ee97-4a90-b076-33f57bf4eaa7}
"TranscodedImageCache_008"
C:\Users\david_000\AppData\Local\Microsoft\Windows\Themes\NASA Spac\DesktopBackground\7_nasaspacescapes_0007_8.jpg
\\?\DISPLAY#@@@0000#5&1cd24d1&0&UID3536977921#{e6f07b5f-ee97-4a90-b076-33f57bf4eaa7}
"TranscodedImageCache_009"
C:\Users\david_000\AppData\Local\Microsoft\Windows\Themes\NASA Spac\DesktopBackground\dn26748-2_1200.jpg
\\?\DISPLAY#@@@0000#5&1cd24d1&0&UID3536977922#{e6f07b5f-ee97-4a90-b076-33f57bf4eaa7}
The cache is limited to 10 monitors. It seems the identification string of monitors has been modified, that's created additional entries. Assuming you have 6 monitors, the cache should have been sized for 12 entries.
Post the diadnostic report (Help/Diagnose
). We can see if monitors are corresponding.
Sorry, what diagnostic report is that?
The first 7 monitors in the list above appear to be the ones that are currently connected (one of which, the 7th, is disabled).
Sorry, what diagnostic report is that?
The diagnostic report that appears when you select Help/Diagnose
from the menu.
I assume your version is up to date.
Here is the Diagnose report: https://gist.github.com/davidknaack/cfb698ab9ecafb3d2fba
This monitor configuration may be slightly different than what I was running before, it's not unusual for me to disconnect a monitor to connect to a different computer.
The DeviceID \\?\DISPLAY#CMO1720#5&1cd24d1&0&UID1048848#{e6f07b5f-ee97-4a90-b076-33f57bf4eaa7}
is the same for
for DeviceNames \\.\DISPLAY1\Monitor0
, \\.\DISPLAY2\Monitor0
, '.\DISPLAY4\Monitor0', '.\DISPLAY5\Monitor0' and '.\DISPLAY6\Monitor0'.
The DeviceID \\?\DISPLAY#ACI249A#5&1cd24d1&0&UID1048832#{e6f07b5f-ee97-4a90-b076-33f57bf4eaa7}
is DeviceName \\.\DISPLAY3\Monitor0
.
So I can found only two entries in Transcoded Image Cache.
Please, try the last experimental version. I use IDesktopWallpaper to retrieve monitors' wallpaper (Win8).
That works great, correct images on every desktop.
Thanks for looking into it!
You're welcome. By the way, you are the only person, which I know, with more than two monitors. If you can test all desktop wallpaper configurations (position/panoramic), that will help.
It looks like the mapping for Picture Position 'Span' is not quite right:
http://i.imgur.com/NweW19o.jpg
Windows has the top edge of the image up off the top of the viewport, while the ConsoleZ window has the image starting at the top of the screen.
The other picture position options are all working.
The background image option works unless I turn on the 'relative' option. In that case it looks like it's using the correct scaling options, but it's using the wallpaper images instead of the selected background image.
@davidknaack you can try the last experimental version
That fixes the span issue!
thx
I have a tab background set to 'Wallpaper' in a multi-monitor setup. Windows 8.1, each monitor displaying different images. The background image displayed in the console does not match the image on the Windows desktop. The lower-left monitor displays the correct background, the rest all display the same image, which doesn't match the image on any of the desktops (of course they change periodically, so it might match coincidentally at some point).