Why can't horizontal span be implemented on Vista? - windows-vista

Until Windows Vista, ATI and nVidia supported a feature called horizontal span, which combined two monitors into a single larger screen.
This feature allows the taskbar to span across both monitors, allows games to be played in fullscreen across both monitors, and allow Remote Desktop Connection to span both monitors without the /span feature (I have four monitors, so my total screen width is more than RDP's limit of 4096 pixels, making /span very annoying. Also, the ActiveX control doesn't support it)
The Vista drivers from these companies do not support this feature, and it appears that they never will.
What changes were introduced by the WDDM that made this feature impossible?

Horizontal span can be implemented in Vista.
But not with the nVidia cards for now.
Microsoft has changed the WDDM architecture in Vista and nVidia (and other companies) should change their previous drivers to met its requirements to provide the horizontal span.
But unfortunately nVidia haven't done.
I am using Matrox Graphics cards and I have the horizontal span and other features in Vista, enjoying WoW in Vista.
You and other nVidia users should ask nVidia to stop being lazy and start upgrading their drivers!

Related

How does a screen blurring software work (such as Antisnooper) work?

Antisnooper is a screen blurring software that could blur registered windows when mouse is not hovering on it.
https://www.techworld.com/download/security/antisnooper-21-3329883/
Does anyone know how this is implemented? Could this be implemented to various Linux GUI desktops manager too?
Let me answer my own question after some research.
It is not possible for a Windows app to blur client area of another Windows app. If this is allowed, it wouls violate security constrains of an OS; Unless the first app is the OS window manager.
Windows 8 and 8.1 support Aero Glass Transparency with Blur feature. However this feature was removed in Windows 10. It was later partially re-enabled for Start Menu and Taskbar in a major Windows update in 2018.
[Aero Glass for Windows 8.x+][1], a donate-ware uses software hooks to re-implement such this features for Windows 10. However the solution is Windows binary dependent. A new Windows update may break the operation.
So, unless Windows 10 has re-introduced the aero glass completely, it shall not be possible.
If you have found a good solution, please post here. Thanks.

DirectX Performance Issue maximized window

I develop a test application with directx 11 und fl 10.1.
Everything is working as expected and fine, but when I maximize the window with my graphics in it, the time per frame increases drastically. like 1ms to 40ms.
NVS 300 graphics card
Windows 7 32-bit
Application that draws few sinuses with direct3d, c# via sharpdx
Windows forms with a control and sharpdx initialized swapchain, programmed to change backbuffer on resize event (would occur without that too though)
I used a System.Stopwatch to find the issue at the code line:
mSwapChain.Present(1, PresentFlags.None);
where the time it needs when maximized increases by a lot suddenly.
any clues?
In my specific case, switching to windows classic theme with aero disabled solved the issue. Because the frame performance got worse if the windows start button started to lay over the resized window.

Scrolling in Microsoft Remote Desktop on a Mac w/ Magic Trackpad 2

I'm experiencing wonky behavior using a Mac to remote into a Windows 7 PC using Microsoft's Remote Desktop app for the Mac, and using a Magic Trackpad 2 as my primary input device. The problems arise primarily when scrolling in various applications in Windows. It appears the Magic Trackpad is flooding windows with scroll events, causing unpredictable behavior in many applications. Some scroll ok, others whip around or back and forth, or stutter uncontrollably. I probably need to find a way to "filter" out this flood of scroll events into something more manageable by Windows, but I am unaware of any existing apps or utilities to do so? Has anyone else experienced this issue and/or have any potential solutions to it?
A bit more research, and I've got at least a partial solution to the issue. It helps greatly to turn off some of the "Magic" Apple imparts to its trackpads. Namely, turning off 'scrolling with inertia' helps with scrolling when using Remote Desktop. The default functionality for magic trackpad scrolling is to apply inertia to your scroll, making pages continue to scroll after you release the pad like they have weight. While this looks and feels cool, it wreaks havoc with some older windows apps. The trick is to turn this feature off you have to open the Mac's Accessibility control panel, not the one for the trackpad itself. Within Accessibility there are additional mouse and trackpad tweaks, one of which is to turn off inertial scrolling. Also, reducing the scrolling speed to its lowest setting makes Remote Desktop scrolling a bit easier. Hope this helps others.
One of a kind workaround that I came up recently is to decrease the number of lines for one notch of the mouse wheel.
P.S. For some reason the "Wheel" tab is not visible when I'm connected via MS RDP client, but available for the beta version (Version 10.1.5 (866)).
On the Mac side, pay attention to the speed part in the trackpad settings. Here I suggest you bring it to the fastest. Also, in the remote (windows) machine, increase the line per speed from default 3 to 10 And again, on the windows side, set the mouse speed to the fastest in the additional options section.

How to draw directly to an inactive display?

I noticed that, when you are changing monitor resolutions in Windows with extra monitors attached, you can select "Show desktop only on [n]" (where n is the number of your various displays).
Is it possible to write a program that will open an extra monitor (not being used by Windows, but plugged into the video card) and write image data to it (directly or through OpenGL or something)? Where would I begin looking to accomplish this?
It does not appear to be possible to draw directly to a monitor device. It may become possible to some extent with the release of Nvidia and ATI's updated drivers for VR headsets, however it seems that these are only available for Oculus Rift at the moment, with other VR headsets forthcoming.
I haven't found any mention of whether or not they intend to open this feature up to general use with any plug-and-play monitor.

For the same screen resolution and DPI settings, Can the pixels for a IDE control change between two OSes?

Assume a GUI application is opened on three machines running Windows XP, Windows Vista and Windows7. In all the three machines, the screen resolution and the DPI settings are set to be the same value. Will there be a difference in the way the application is displayed on the screen in terms of number of pixels used and their position on the screen?
The reason for asking this question is:
I am using position based record-and-play method for GUI automation. Any change in the position of a control can impact the playback of the GUI recording. I want to be sure that a recording captured on Windowx XP platform works on Vista and Windows7 platforms.
Yes. The OS chrome (starting with window borders and titles) have different styles (e.g. Vista and Win7 will likely have Aero on and thus translucent title).
And that's before considering any OS dependent code in the application.
The menu bars will probably all be different sizes, so you'll probably need to record separately on all three machines.
Bearing in mind, that each user could have any number of accessibility settings on/off, any DPI setting, and also that features such as button sizes and window border sizes are different on each of these OS's...
No one here could possibly guarantee you'll be fine - the only way is to test.
A side note: there MUST be a better way than position based playback? I've used tools previously that can read screen text and base the automated navigation on that, which seems far more sensible, but still horribly flawed.

Resources