Monthly Archives: July 2005

1 Comment

Microsoft has touted Windows Vista as the first OS capable of rendering a good UI at high DPI (DPI =dots per inch). Avalon (*) and the new Desktop Window Manager will make that possible:

"For example, Windows Presentation Foundation's vector-based rendering engine enables applications to scale to take advantage of high-DPI monitors without requiring extra work on the part of the developer or user."

So I tried out what would happen in Windows Vista if I would boost the default setting from 96 DPI to 200%, i.e., 192 DPI. The new Longhorn Display Driver Model (LDDM) will enable GPUs to be hot-swappable, yet I had to reboot after changing the DPI setting. Who's going to plug in a new GPU without rebooting if you can't even change display settings without rebooting?!

So what happened? Well, things started to fall apart...

Check out these screenshots. I recommend that you click on the images (and on the image in the gallery that appears after that) to see the full size versions.

Windows UI falling apart at 192 DPI (1) (click for larger version)

Windows UI falling apart at 192 DPI (2) (click for larger version)

As you can see the UI doesn't exactly scale like vector graphics. Some parts do, but other parts look really awful. Some texts are clipped. Some buttons (like the minimize maximize and close buttons) become fuzzy or jaggy as they are apparently bitmaps that are scaled. Okay lets go back to what Microsoft had to say about Windows Vista:

"End users want great graphics, high dots per inch (dpi), rich 3-D, animations, transitions, fades, all in a glitch-free environment, and Windows Vista offers these next generation graphics."

I guess the marketing department got carried away a bit there. Another Microsoft article says similar things, but note the disclaimer:

"Users with high-resolution monitors (for example, a monitor with a resolution of 1600x1200 pixels) will be more productive because Windows Vista can smoothly scale icons and the overall user experience to higher dots-per-inch (DPI) displays. As a result, users of applications designed for high DPI display, such as photo editing or engineering applications, will not struggle to read small on-screen text when simultaneously using an application that is not designed for a high-DPI display.

Note: Features discussed on this site are subject to change. Some features may not be included in the final product due to marketing, technical, or other reasons."

Look at this post from IanG on similar problems in the Tiger OS X UI. Ian Griffiths also shows how Avalon (*) can solve this high DPI problem using vector graphics. He created the buttons you can see below using Avalon vector graphics to show off to Apple. Too bad Microsoft isn't using Avalon in Beta 1 of Windows Vista. But I'm starting to repeat myself...

Avalon vector graphics buttons     

(*) Yeah, I know, I should write Windows Presentation Foundation.

After further exploring Windows Vista it turns out that are some more components than just ASP.NET 2.0 that use managed code. The visuals of the new Event Viewer looked a bit funny and the UI performed sluggishly. Here's a screenshot of the new Event Viewer:

The new Event Viewer on Windows Vista (click for larger version)

This new Event Viewer has gained quite a bit of functionality:

"Improvements to the Windows event logging service make the Windows Vista desktop easier to manage and monitor and provide better information for troubleshooting. Strict standards ensure that events are meaningful, actionable, and well-documented. Many components that stored logging information in text files in previous versions of Windows now add events to the event log. With event forwarding, administrators can centrally manage events from computers anywhere on the network, making it easier to proactively identify problems and to correlate problems that affect multiple computers. Finally, the event viewer has been completely rewritten to allow users to filter and sort events, control which type of events are logged, discover events more easily, and perform basic diagnostic tasks. This input makes it much more practical for administrators to use the event log to troubleshoot users' problems."

After firing up Sysinternals' Process Explorer my suspicions were confirmed: the CLR was loaded. After a couple of minutes it was undeniable when the Event Viewer crashed with the following managed code stack trace. Also note the new UI for sending crash reports to Microsoft:

The new Event Viewer on Windows Vista crashes (click for larger version)

The stack trace shows that the sluggish UI might be caused by the strange UI model chosen for the Event Viewer. The unmanaged Management Console (mmc.exe) process hosts the managed Event Viewer plug-in. This managed plug-in generates HTML code that is shown by using the Windows Forms 2.0 WebBrowser control. This control uses the unmanaged rendering engine of Internet Explorer to display a list of events. I hope that the final version will use Avalon and it's powerful databinding techniques for displaying a list of events.

Microsoft retracted the faulty setup of the WinFX SDK and replaced it with a new version. This version installed without a glitch on Windows Vista Beta 1.

I also installed the just released beta 1 of the ATI drivers for Windows Vista to get the best possible graphics experience. The Aero Glass theme runs without problems on my ATI RADEON 9800 PRO video card with 128 MB of memory. Unfortunately I am missing sound as there are no drivers for the Soundblaster Audigy as of yet. 

So now I could finally try out Adam Nathan's Avalon Cards Sample after compiling it. You can see it in the following screen shot. Notice the translucency of the non-client areas of the windows with the Aero Glass theme.

Avalon Cards Sample running on Windows Vista (click for larger version)

I can't notice if it runs any smoother than it did with the WinFX Beta 1 RC1 on Windows XP on my machine. Moving the mouse over the cards still produces a high CPU usage (up to 80%), so it seems not all work is offloaded to the GPU.

1 Comment

After the install of the WinFX SDK failed I tried to install Visual Studio 2005 Beta 2 on Windows Vista. The first attempt was unsuccesful because the MSXML 6.0 Parser could not be installed.

I remembered seeing an msxml folder on the Windows Vista DVD. It also contains an installer for MSXML6. Its location on the DVD is supportwinfxwcumsxmlmsxml6.msi. That version installed just fine. After that the Visual Studio installer detected that MSXML6 was already installed and did not try to install it again.

With that fix Visual Studio 2005 Beta 2 installed with no further problems.

At the end of my previous post I mentioned that I needed to download and install the WinFX SDK to run an Avalon sample app. After the downloading and starting the setup I ran into this error message:

After checking the digital signature of this file, it turns out that this signature cannot be verified:

because there is a problem with validating all the certificates in the certification path

I found some Usenet postings that indicate the same problem. And that's where it ends right now, because there is no solution available as of yet.

After installing Windows Vista and revealing that it has no significant dependency on WinFX or the .NET Framework it is on to the fun stuff. This is the view of the Games folder:

Windows Vista Games folder (click for larger version)

As you can see the icons are scalable to large sizes and are vector based. After this eye candy be prepared for some devastation:

Solitaire looks disappointing (click for larger version)

These are old-style bitmap graphics that don't scale ;( Check out Adam Nathan's blog post about XAML cards for what could have been if Avalon had been used.

Very revealing is his reply to a comment:

"Thanks! To be clear, this is just a demonstration for the sake of developer education. I don't currently know what the plans are for the card games shipping in future versions of Windows."

I can't run his sample app even with WinFX installed, because it is not distributed in executable format.

Well I guess I have to try if the WinFX SDK and Visual Studio 2005 Beta 2 will install on top of Windows Vista. The WinFX SDK is not included on the Windows Vista DVD so I had to download it. Luckily the pesky Windows Genuine Validation tool thinks that my Windows Vista installation is genuine so I could start the setup. But then I ran into trouble. Check out my next blog post for more details.

1 Comment

After installing Windows Vista it's on to the R&D work. Note that this is done for LogicaCMG.

Microsoft Watch' Mary Jo Foley revealed in May 2005 the "dirty little secret" about Longhorn:

Developers say there's a dirty little secret about Longhorn that few Softies are discussing publicly: Longhorn won't be based on the .Net Framework. We're still expecting that the .Net Framework will ship with Longhorn–on the CD and/or "in the box" in some way. But the .Net Framework won't be at Longhorn's core, we hear.

And yep it is true. Windows Vista Beta 1 out-of-the box doesn't use the .NET Framework in any way! To prove it I took this screenshot of Sysinternals Process Explorer which highlights processes that have the CLR loaded in yellow:

No .NET processes running in Windows Vista (click for larger version)

Even worse "Avalon" and "Indigo" (or should I say "Windows Presentation Foundation" and "Windows Communication Foundation") and the rest of WinFX are not even installed! This is the "out-of-the-box" view of the .NET Framework directory. Note that the nice smooth big icons (in large icon view) for some files and folders were not produced using Avalon!

Large Icon view of .NET Framework folder (click for larger version)

It seems the .NET Framework is only used for ASP.NET. Internet Information Server (IIS) is installed by default. The service is disabled by default but is easily enabled using the IIS management console plugin. It is not easy to determine the version number of IIS, but it seems to be a derivative of IIS 6.0 and not IIS 7.0. IIS is not configured to run ASP.NET by default and I found no other way to enable it than to run aspnet_regiis -i from the .NET Framework folder.

WinFX can be found on the Windows Vista installation DVD in the Support folder:

WinFX on the Windows Vista DVD (click for larger version)

1 Comment

This is my first post from within Internet Explorer 7.0 running on Windows Vista. It is my account of the installation process of Windows Vista.

10:16 - Finished burning the 2.4 GB ISO image to DVD. Windows XP Autoplay offered to start the setup.exe on the new DVD.
10:17 - Started the installation from within Windows XP. I only had to answer three questions: 1) Where to install, 2) The product key and 3) The computer name.
10:18 - Windows Vista started installing from within Windows XP. No further user interaction was needed. I took this picture:
Installing Windows Vista
10:25 - First reboot. My Windows XP installation takes two minutes to shut down ;(
10:27 - First Windows Vista boot. The boot screen looks nasty:
First Windows Vista boot
10:28 - The installation continued. The following screen was shown for quite some time. Note that the progress bar didn't make any sense. It filled and cleared about once every minute.
Installation of Windows Vista continues
10:48 - Second reboot. Same boot screen, but then followed by a black screen, followed by my monitor going into stand-by. Hmmm, not good I thought. Then I remembered something similar when installing an alpha build of Longhorn. I turned on my secondary monitor, and fortunately the installation was continuing over there:
Installation of Windows Vista continues on secondary monitor
10:51 - The installation is complete. Windows Vista is running interactively and I can switch the display back to my primary monitor.

So all in all a good setup experience. The process is much smoother than installing Windows XP for instance. Subtracting the two reboot time, installing Windows Vista took 32 minutes with only minor user interaction at the start required. On to my first explorations within Windows Vista in my next blog post...

The official names for Indigo and Avalon have been announced to be "Windows Communication Foundation" and "Windows Presentation Foundation".

I think I will have a hard time abandoning the Avalon and Indigo code names. Windows Vista is a better name than Longhorn, but these long names suck big time...

But the good news is that the WinFX name will stick! In fact officially it is WinFX™. Thankfully that won't become Windows Application Pack.

That blog post of JohnMont also lists the new features that Windows Vista will bring to the table. Note the absence of claims that WinFX™ as a managed API will cover everything that the Win32™ API offers.

Microsoft has released beta 1 of Windows Vista. You can download it if you have an MSDN Subscription from http://msdn.microsoft.com/subscriptions/. It's a hefty 2.42 GB DVD ISO download. I am downloading it right now but I guess I have to clean up my machine to make some room to install it. Hopefully the beta will feature the new OS installer which should get Longhorn installed in 15-30 minutes.