Well, Longhorn build 4051 is finally here, with several thousand developers outside of Microsoft finally hammering on the product each day, hoping to unlock its secrets. One thing should be made clear up front: Despite its slew of new features and apparent polish, Longhorn build 4051 is not suitable for most end users and enthusiasts, and I suspect few people will find themselves running this build regularly on their day-to-day machines. Longhorn build 4051 is, however, an exceptional platform for investigating the underlying technologies in Microsoft's next platform, using the Visual Studio .NET "Whidbey" environment and the Longhorn Platform SDK (software development kit), both of which were recently given to developers, along with Longhorn) at the Professional Developer Conference (PDC) 2003 in Los Angeles. That's the way I've been using this build, and after installing it on several machines and noting some common problems, I've come up with this tips and tricks page to help others get up to speed--and back to work--as quickly as possible.

Because Longhorn is such a new system, there are a lot of changes under the hood, and it's a learning experience for everyone. If you have some interesting tips, tricks, or tweaks for Longhorn build 4051, please let me know, and I'll publish them here so everyone can benefit. Thanks!

Use the right hardware

Longhorn build 4051 (also called the "PDC build") hasn't been performance-tweaked, and given how much new technology is tacked on, it's not exactly a great performer as a result. So you'll want to have the right kind of system before you even attempt to install Longhorn. Depending on whether you use a notebook or desktop PC, my recommendations break down as follows:

Notebook computer

Processor: 1.6 GHz Pentium-M processor or higher, or 2.0 GHz Pentium 4-M or higher.
Memory: 512 MB of RAM minimum; 1 GB recommended.
Hard drive space allocated to Longhorn partition: At least 10 GB, or 25+ GB for Whidbey-based development environment with Longhorn SDK.

Desktop computer

Processor: 2.0 GHz Pentium 4 or higher.
Memory: 512 MB of RAM minimum; 1 GB recommended.
Hard drive space allocated to Longhorn partition: At least 10 GB, or 25+ GB for Whidbey-based development environment with Longhorn SDK.

Detecting and installing devices

One of the big problems you'll probably have with Longhorn build 4051 is hardware detection, especially on notebook computers. Here's a strategy: Before installing 4051, visit the support Web site for the company that made your PC and download all of the Windows XP drivers for your particular strategy. After booting to the Longhorn desktop for the first time, you'll be inundated with a seemingly never-ending stream of hardware detection notification windows; let the system bring up the Hardware Installation Wizard each time, try to autodetect the correct drivers, and then cancel it out each time when it fails. Wait. And wait. And wait. Eventually, the hardware detection notifications will stop.

When they do stop, examine Device Manager (Start, right-click on Computer, choose Properties, go to Hardware tab) to see which devices are missing drivers. Then, install your XP drivers, as needed, one-by-one. In most of the cases I've seen, the XP drivers won't install correctly the first time, citing the wrong OS version, which makes sense. But I've had huge successes (read: 100 percent success over five systems) by faking out the driver installation routine with Longhorn's application compatibility feature. Here's what you do: locate the Setup.exe (or similar) application for each driver setup, right-click and choose Properties. In the new Details sheet that appears, select Other Properties and then Compatibility. Then, check the box titled "Run this program in compatibility mode for" and select "Windows XP" from the drop-down list box. Re-run Setup.exe and your driver should install just fine. Repeat for each device.

I'm amazed to say this process worked wonders for me on a number of systems, including two 1.6 GHz Pentium-M notebooks, a 1.5 GHz Pentium-M notebook, a 3.20 GHz Pentium 4-based desktop PC with Hyper-Threading technology, and a 2.66 GHz Pentium 4-based desktop PC. For the record, the desktop PCs worked better out of the box, so to speak, in the sense that they required fewer device driver installs after Longhorn was up and running.

Enable network browsing

This one took a while to figure out, but after getting Longhorn build 4051 up and running on several systems here at home, I was surprised to discover that I could no longer browse my home network via Network Places (formerly My Network Places), despite the fact that I was using appropriate credentials on the right workgroup. Contrary to reports I've seen elsewhere, this has nothing to do with Longhorn's "new network stack, completely rewritten from the ground up" (which doesn't appear to be the case in this build at all). Instead, there are two changes you'll have to make to Longhorn's network adapter setup. That is, you'll have to disable the Internet Connection Firewall (ICF) and enable a service that's on by default in XP, but not in Longhorn build 4051 for security reasons.

First, you'll have to open Network Connections, which might be hard to find depending on how your system is configured. The simplest way is to open the Control Panel (Start, Control Panel), select "Network and Internet Connections," and then select Network Connections. Then, right-click the appropriate network connection (probably "Local Area Connection" for a wired Ethernet network, or "Wireless Network Connection" for a wireless network) and choose Properties. Go to the Advanced tab and uncheck the box titled "Protect my computer and network by limiting or preventing access to this computer from the Internet." Handle any "are you sure?"-type dialog that appears.

Then, go back to the General tab, select "Client for Microsoft Networks," and click "Properties." Under "Name service provider," choose "Windows Locator" and click OK. Close all the windows and reboot as required. Networking browsing will work once more. Now the flipside, of course, is that your Longhorn system will be more open to external attack, so the usual caveats apply.

Stop the explorer.exe memory leak

Anyone who's used Longhorn build 4051 for any amount of time will likely have noticed a massive memory leak in explorer.exe: Just open task manager, and you can watch explorer.exe chew up available RAM in real time. I didn't figure out how to fix this one myself, but thanks to "Chris123NT" and "Nighthawk" of Windows Codename Longhorn PDC Build 4051 Tweak Guide fame, I found the answer. Apparently, the Sidebar, largely useless except as a curiosity in this build (unless you're writing Sidebar tiles in Whidbey, I suppose), is the culprit. To stop the memory leak, you simply have to turn off the Sidebar and reboot.

To do so, right-click the taskbar or Sidebar and choose Properties. In the "Notification area" section of the Taskbar tab, uncheck "Enable the Sidebar." Then, reboot. Voila, no memory leak.

Chris123NT and Nighthawk recommend other changes to the shell, but I disagree with that advice, largely because the goal of using Longhorn at this point is to discover new features and write the first applications that take advantage of technologies like Avalon and Indigo. While Longhorn 4051 isn't perfect, stripping this build of its unique Longhorn features makes it less valuable as a learning tool.

Enable pop-up ad blocking in Internet Explorer 6.05

One of the coolest new features in Longhorn build 4051 is the pop-up ad blocking feature in Internet Explorer 6.05. To enable this feature, simply select "Block Pop-up Windows" from the Tools menu in IE. You can also configure this feature by selecting Tools then Internet Options in IE, navigating to the Privacy tab, and selecting "Options" under the section titled "Pop-up window management." Here, you can make a white list of sites that can display pop-ups, choose whether a sound rings when a pop-up window is blocked, and choose to block all pop-ups, even ones that are in response to a hyperlink click.