Robert McLaws: Windows Edition

Blogging about Windows since before Vista became a bad word

Vista Display Changes Have Unintended Consequences

One of Vista's best new features is a drastically overhauled display driver model. Based on analysis from Microsoft's Windows Error Reporting data, most of the BSODs in Windows are caused by bad drivers, and a large percentage of those bad drivers are graphics card drivers. So the WDDM aimed to solve that problem by building a much more robust display model which took over large operations that were previously required at the driver-level.

The changes have saved my butt on plenty of occasions. Before, when a graphics card driver crapped out, so did the rest of your system. I've lost data many times because my Nvidia card decided it didn't like an instruction that was just passed in, and decided to give me the blue finger. In Vista, a failed graphics driver is no problem. The system just pauses while the driver is reset, then you session resumes where you left off. It's pretty slick.

But this newfound graphics card stability comes at a fairly hefty price. As Microsoft whitepaper on the WHDC notes, Multi-monitor scenarios have drastically changed as well. In the past, you used to be able to install more than one graphics card from more than one vendor on your system, and it would run fine. But in the WDDM, that is no longer the case. If you want to get the Windows Aero experience, you have to not only be running WDDM drivers, but you have to be running the same drivers for each card, meaning that each card has to be from the same vendor.

 Microsoft's reasoning is as follows:

The use of multiple graphics adapters occurred when graphics hardware vendors did not expose multiple connectors on graphics adapters. Today, almost all modern adapters support two or three connectors such as DVI, VGA, and S-Video. Also, most OEMs are now offering SLI/Crossfire configurations that support two or more graphics adapters that could also be used to connect more than two display devices when not in SLI/Crossfire mode.

Usually, that would make perfect sense. Most graphics cards have two output ports... and SLI cards mean that if you want dual cards... they'll be the same brand, and linked together through a separate interface.

But here's the problem. There are a number of solutions out there that use emulated display drivers to do some pretty interesting things. MaxiVista is a perfect example of this. It uses an emulated display driver to shuttle your primary or secondary display data to another PC for viewing. It's like an all in one dual-monitor/KVM/presentation system. But Vista's features have severely limited their software:

First of all, we were first in finding the product name (trademark registration) ;-)

  • Windows Vista unfortunately introduces some serious limitations when using multiple monitors. This limitations are independent from MaxiVista and you also experience them when using physical video cards: Windows Vista generally disallows installing multiple WDDM video cards from different vendors. This means you cannot install e.g. a ATI video card along with a nVidia card on the same PC if one of them is using WDDM drivers (more information by Microsoft). Therefore, MaxiVista can only support the classic, non-aqua display mode of Windows Vista when using legacy XPDM drivers for your physical video adapters. (Emphasis mine)
  • Windows Vista generally does not allow you to log on to remote PCs using any 3rd party software "for your safety". This means, that the new MaxiVista feature to use the viewer program as a service and to log onto the secondary PC via the remote control feature does not work. This is a Windows Vista restriction, not a MaxiVista limitation.
  • Windows Vista x64 disallows to install software with unsigned drivers "for your safety". As MaxiVista drivers are not yet signed, it does not work under Windows Vista 64 Bit OS.

This was really disappointing to me, as I was looking to use MaxiVista as a cheap KVM solution to manage my Windows Media Center computer from a console session. I wanted to do it this way because Windows Media Center will not let you watch TV over a Remote Desktop session, and it won't let me use another Vista Media Center PC as an Extender.

I really hope that Microsoft and MaxiVista are able to find a solution to these problems. One way would be for MaxiVista to work with AMD/ATI and Nvidia to create display drivers that work in WDDM mode and appear as Nvidia or ATI drivers. That would work around the "heterogeneous graphics driver" limitation in Vista, and allow their place-shifting monitor functionality to work. Or Microsoft could fix WDDM in Vista SP1 to re-enable these use cases.

Either way, these limitations make Vista's display improvements a mixed blessing.



  • Helge said:

    I certainly agree with your in-depth thoughts. Maxvista is the main reason why I will NOT upgrade to Windows Vista. And I would need to give up a few other useful tools as well which do not work any more in Vista.

    Microsoft really must fix this. The limitations introduced by WDDM are just inacceptable.


    December 20, 2006 12:04 PM
  • AndyC said:

    Given that MaxiVista can't emulate hardware accelerated graphics, it's hardly a major problem. Even if Microsoft altered the WDDM requirements, you still wouldn't get Aero Glass and you still wouldn't be able to remote Media Center any better that you can with Remote Desktop.

    December 20, 2006 1:57 PM
  • bluvg said:

    Interesting post, Robert.  Speaking of using Vista as a Media Center Extender itself, what ever happened to SoftSled?  Weren't they going to introduce that functionality?  This is a notable deficiency in what is otherwise such a stellar product.  

    On the other hand, I just recently found out that HD from CableCard sources cannot be used on Media Center Extenders--it can only be viewed on the PC on which it was originally recorded--which is just ridiculous.  I can understand concerns over transferring the files to another computer, but viewing it through a Media Center Extender?  C'mon....

    December 20, 2006 3:26 PM
  • bluvg: That's incorrect. HDCP-protected content can be sent via Extenders. It just can't be watched on another Vista machine.

    The SoftSled functionality is still on the table, but it got bumped off the Vista priority list due to scheduling. MS had to re-prioritize their tasks if they wanted to ship with Vista. If enough people vote on it in the Early Feedback connection, it will get moved closer to the top of the Vista SP1 priority list.

    Helge: I wouldn't stay with XP just because of MaxiVista. You can still run it, you just won't get a hardware-accelerated desktop. And remember, WDDM is a V1 release. It will get better in V2. The benefits far outweigh the problems.

    December 21, 2006 1:17 AM
  • bluvg said:

    Sorry--I could have sworn that I just read that recently, but I can't find it now, so maybe I was mistaken.  What I recall reading was something that said that HD content via CableCard could not be streamed--not because of the protected-path HDCP, but because of DRM restrictions on the content itself.  

    Do you have a link to the Early Feedback site?  This functionality would be absolutely fantastic.  Running TV around the office over Ethernet rather than coax would be so slick.  (BTW, do you have any recommendations for tuner cards that change channels quickly?  I have an nVidia dual-tuner card, and it's frustratingly slow....)

    December 21, 2006 2:23 PM
  • Dalton D. Franklin said:

    Good post, Rob.

    I was actually googling this particular problem when I came across your name.

    I'm accustomed to using a nice graphics card for primary and/or secondary display.  I then usually have another display for graphics insensitive content: e.g. my instance of outlook, notepad todo lists, or whatever - I keep this far out of my view, to my right.  In Vista, my onboard graphics adapter is disabled because the Intel 915 series video chipsets don't support vista (yes, I know I need to upgrade :P).

    They should at least support "crappy" video rendering on unsupported drivers... or perhaps I just don't know how to enable that --> thoughts anyone?

    January 31, 2007 12:44 AM
  • Al said:

    Good article - well written and clearly explained.

    Not sure if you can help but I have a bit of a problem with Gunter at Maxivista as he will not change the site to clearly state that there is a very large problem with Maxivista and Vista - I would not have upgraded to Vista if I have know there would be a large problem. I just saw that there was an entry in the forum about if you get a VGA error message and as it seemed to recommend a solution I thought nothing of it.

    If I post something in the forum to clearly state things - he removes the post!

    I would not recommend any Maxivista user upgrade to Vista as what you gain from Vista is not worth losing the MaxiVista functionality.

    Unfortunately I am now stuck with Vista as there is no downgrade option apart from reinstall XP which I do not have the time to do.

    If you have any influence with Gunter please can you gently suggest that putting a clear message about the conflict between Maxivista and Vista - would protect his business and relationship with his customers much more than the current denial strategy and suggesting that there is a work-around. There is no real work-around as it removes the ability to use one of the only reasons I've found for upgrading to Vista (Aero).

    I like Maxivista - great software, I like the company very responsive and previously very good customer service - I just wish they would be more responsible.


    March 12, 2007 12:58 PM