Microsoft Longhorn

APIs

.NET framework

A significant part of Longhorn is written in managed .NET code. Taskbar, sidebar, preview paneā€¦ it’s all .NET. I thought it would be interesting to know the mechanics behind this framework, so here we go: an article solely about .NET.

Branding APIs in Longhorn

After the painful experience of repeatedly changing names during the Windows XP and Windows Server 2003 development cycles, Microsoft decided to introduce a common, global branding API into Longhorn. The foundations of this system are present right from build 3683.

Creating a sidebar tile in build 3683

A couple of years ago, I put together a sample tile written in .NET 1.1 / Visual Studio 2003 for Longhorn build 3683. This sample tile simply reads the current OS Version from Environment.OSVersion.

Hacking Avalon #1: Disable it in Longhorn

This is the first post in a series that I’ll be doing. Hacking Avalon will be all about interesting stuff in Avalon. Furthermore, I hope to provide some background on how early variants of Avalon work together with the shell in Longhorn. Keep in mind, this series will mainly discuss the earliest revisions of Avalon found in Milestone 3 builds. The tricks may not always work on later builds. That’s it for the intro.

Hacking Avalon #2: Port it to Windows XP

Always wanted to experiment with Avalon on Windows XP? In this second part of the “Hacking Avalon” series, we’re going to install not only Avalon but also some other Longhorn components. In this post, I will take Windows XP as example, but the installer is also compatible with Server 2003. Below is a description of the included components and their use.

Hacking Avalon #3: Compiling XAML

In this third part of the Hacking Avalon series, we are taking a closer look at the process of making an Avalon application. To do this, we will be using a special tool only available in early Longhorn builds. This tool is called the Avalon Compiler or simply ac. This tool does what its name suggests; compile Avalon. What is that precisely?

Managed C++, and the Longhorn Shell

Reading up on Longhorn’s development process, and you’ll read a lot about how the shell or user interface was redeveloped using the .NET Framework, and many people infer that this meant using C#, including a number of Microsoft employees. This has then been blamed for the poor performance of Longhorn and in particular, is often cited as the cause for its numerous memory leaks.