I posted a rather knee-jerk thought on my personal blog about this, but I wanted to expound a bit here since the audience is a bit more serious (*a-hem*). 
It seems that everyone is buying up virtualization products and services like plywood at a hurricane sale. Microsoft snatched up Softricity and Kidaro. EMC/VMware grabbed Thinstall. Citrix nabbed Xen. Sun acquired Virtual Box. Oracle and RedHat jumped in, and well, it's a big bowl of virtual soup now. At this point, I would venture to say that if you own a company making virtualization products or services, and you haven't been acquired (or even courted) by a buyer, you need to wonder why.
So much virtualization is going on, yet all of it seems focused mostly on the "hypervisor" side of things. The base-level substrate approach to hosting multiple guest operating systems. Microsoft's Hyper-V, VMware ESX, Citrix Xen Server and so on. There are more every week it seems.
Application virtualization however, or "App-V" (which Microsoft seems to be making into its own trademark), is a much more refined focus on encapsulating just an application (or application suite in some cases) for all sorts of benefits. It's not really that new, so that's why I'm confused about why the big players in this market seem to be holding back on things.
The biggest obstacle comes down to cost. The pricing models are still too high. They're aimed exclusively at large enterprise customers. SMB's could absolutely benefit from this technology, but they don't even know about it because most of them don't (a) have Microsoft Software Assurance on all their desktops, or (b) don't hear anything out of VMware besides "ESX" and "Virtual Center". Only die-hard techies know about the other players like Altiris SVS, Sun, Oracle and Citrix (who also aims their marketing at enterprise customers).
Don't believe me? Go visit some law firms, doctor's offices, schools, and even municipal government IT staff people. Ask them what their thoughts are about ThinApp, or App-V (ok, SoftGrid), or SVS or XenApp. If you get even one of them who responds with complete understanding you're really lucky. Some will have heard about these products, but will not be really familiar with what they're about. Some won't even know the names.
I've seen many environments where the biggest desktop support pains involve application conflicts, local user rights (with regards to using certain legacy applications), installing upgrades, rolling back problematic updates and so on. Trying to tackle these issues with "traditional" solutions is a major pain. A MAJOR PAIN. I know. I work with software packaging and deployment all day. I would gladly trade Wise or InstallShield script debugging for SoftGrid (oops App-V) or ThinApp "sequencing" ANY DAY of the week. No comparison. And the results are equally as good: conflicts, user rights, upgrades, roll-backs, all are massively reduced when addressed properly by App-V solutions.
I've spent the better part of two weeks packaging ten separately CAD applications into a single package to deploy to 2000 users on a WAN using Wise Package Studio and Altiris. Painful. Writing so much scripting code and hassling with pre-requisite items like .NET, MSXML, SQL Express, WSE, etc. etc. And almost half the code is dealing with detecting and ripping out older versions of each product in the package. I won't even attempt to rationalize the logic behind bundling so many apps in one package because it's not my call to make. Doing this with Thinstall or App-V for example would have eliminated half the work and more than half of the issues we're trying to solve in the end. Alas, that golden pot of fun isn't in our arsenal and not on the table either. MSI packaging it is; and will be as long as I can tell.
So, again, I pose the question: Why are the vendors ignoring smaller customers? Why are they making this technology so unreachable? Why do the vendor reps spend so much time marketing the hypervisor stuff and rarely even mention the app-v stuff? Weird. It's just weird.
Sometimes when I get bored, REAL BORED, I go diving into log files and see if there's something exciting there. Usually not. But sometimes I see something that makes me want to say something about it anyway. This is one of those situations.
The WindowsUpdate.log file under %WINDIR% (e.g. C:\WINDOWS) contains the play-by-play events of your Microsoft/Windows Update agent processing chores. Every time it fires up and checks for needed updates, it logs every painfully dull step along the way. But something a little more interesting is looking for where the WUAUCLT agent checks to see if it needs to update itself. This is known as "self-update".
Here's a snippet from a client log to show a section of the log that walks through the self-update verification.
2008-07-14 18:33:03:862 1164 179c Setup Checking for agent SelfUpdate
2008-07-14 18:33:03:863 1164 179c Setup Client version: Core: 7.1.6001.65 Aux: 7.1.6001.65
2008-07-14 18:33:03:863 1164 179c Misc Validating signature for C:\Windows\SoftwareDistribution\SelfUpdate\wuident.cab:
2008-07-14 18:33:03:886 1164 179c Misc Microsoft signed: Yes
2008-07-14 18:33:15:209 1164 179c Misc Validating signature for C:\Windows\SoftwareDistribution\SelfUpdate\wuident.cab:
2008-07-14 18:33:15:225 1164 179c Misc Microsoft signed: Yes
2008-07-14 18:33:15:229 1164 179c Misc Validating signature for C:\Windows\SoftwareDistribution\SelfUpdate\wsus3setup.cab:
2008-07-14 18:33:15:243 1164 179c Misc Microsoft signed: Yes
2008-07-14 18:33:15:248 1164 179c Misc Validating signature for C:\Windows\SoftwareDistribution\SelfUpdate\wsus3setup.cab:
2008-07-14 18:33:15:264 1164 179c Misc Microsoft signed: Yes
2008-07-14 18:33:15:293 1164 179c Setup Determining whether a new setup handler needs to be downloaded
2008-07-14 18:33:15:294 1164 179c Misc Validating signature for C:\Windows\SoftwareDistribution\SelfUpdate\Handler\WuSetupV.exe:
2008-07-14 18:33:15:334 1164 179c Misc Microsoft signed: Yes
2008-07-14 18:33:15:335 1164 179c Setup SelfUpdate handler update NOT required: Current version: 7.1.6001.65, required version: 7.1.6001.65
2008-07-14 18:33:15:335 1164 179c Setup Evaluating applicability of setup package "WUClient-SelfUpdate-ActiveX~31bf3856ad364e35~x86~~7.1.6001.65"
2008-07-14 18:33:15:569 1164 179c Setup Setup package "WUClient-SelfUpdate-ActiveX~31bf3856ad364e35~x86~~7.1.6001.65" is already installed.
2008-07-14 18:33:15:570 1164 179c Setup Evaluating applicability of setup package "WUClient-SelfUpdate-Aux-TopLevel~31bf3856ad364e35~x86~~7.1.6001.65"
2008-07-14 18:33:15:619 1164 179c Setup Setup package "WUClient-SelfUpdate-Aux-TopLevel~31bf3856ad364e35~x86~~7.1.6001.65" is already installed.
2008-07-14 18:33:15:620 1164 179c Setup Evaluating applicability of setup package "WUClient-SelfUpdate-Core-TopLevel~31bf3856ad364e35~x86~~7.1.6001.65"
2008-07-14 18:33:15:691 1164 179c Setup Setup package "WUClient-SelfUpdate-Core-TopLevel~31bf3856ad364e35~x86~~7.1.6001.65" is already installed.
2008-07-14 18:33:15:691 1164 179c Setup SelfUpdate check completed. SelfUpdate is NOT required.
In this rather unexciting example, you can see that this client was already using the most recent version available, so it did not request a self-update. One place where this might be useful is when diagnosing clients which are showing problems reporting up to WSUS or System Center Configuration Manager and you suspect it might not have the latest client agent version.
I've been waiting to see if this would happen. Like most of my petty wishlist idealisms, I figured it was too trivial to be considered. However, reading the latest post on the WSUS Team Blog by Cecilia made me feel like it was Christmas morning again. Just goes to show you how low my standards and expectations really are. I get excited over stuff like this. Then again, I got excited about getting a job that took me full circle back 10 years to where I started before going to college and amassing tons of student loan debt. Amazing. :)
So, what's the big deal?
WSUS 3.0 now sports two new product categories:
-
Windows Server 2008 Server Manager Dynamic Installer (by far the coolest of the two in my humble opinion)
-
Windows Server 2008 Server Manager – Windows Server Update Services (WSUS) Dynamic Installer (the lesser, but still cool item - sidenote: can this title be any frigging longer?)
Why is this a big deal? It's further proof that the Server Manager is a force to be reckoned with. It's really a huge improvement in Windows Server 2008. See, and you thought I was going to blog and blabber on about WSUS only. Fooled ya! While this is a change for WSUS, it's really all about giving Windows Server 2008 another shot of Vitamin B-12 in the arm. MMC is extensible enough and everyone knows it. But the Server Manager is like an MMC of MMCs when you really think about it. It's another nested hierarchical level above the MMC snap-in model and it allows you to do some incredible things.
Now, stop toking on your bong for just a second and recall that there's also a System Center Updates Publisher product out there. Hmmmm... Yes, I can see it now: Groups of uber-coder youth, tapping out new Server Manager add-ins from within Visual Studio and publishing them to WSUS and System Center for mass consumption. I know - I know, never drink the bong water. It's a cool thought though. The plumbing is in place to do great things. If Microsoft has done anything right, they've built the most incredible plumbing systems ever for integrating operating systems, infrastructure management, applications and data transformation. You can build your own toys or buy them. Nice to have that choice.
Ok, so I was thinking about my anecdotal ranting in my previous posting (about Windows Server 2008 reliability). Stupid me. I forgot about the nifty-cool "Reliability and Performance Monitoring" feature in WS08 (and in Vista also). If you haven't looked at that: YOU SHOULD. Microsoft really took a risk with this feature. Talk about unzipping your fly and letting it all out for everyone to see. This utility captures EVERY failure or impediment to your system's stability or reliability. Drivers, applications, updates, hardware, and of course Windows itself. It scores from 0 to 10 on overall reliability. Every time a patch is installed, it hits the score. Every time you lose facility power, it hits the score. Nothing is spared. Nothing is excluded.
Here are some screen shots of my WS08 box at home. Note that this box is meager in terms of hardware. It's an old Dell OptiPlex GX-260 with 1 GB of RAM, a 40 GB IDE drive for C: and a 500 GB IDE drive for data. It is configured as my AD domain controller, and hosts IIS7 for internal web apps, and also WSUS 3.0 SP1 for managing all the clients on my network (there are four). The data drive stores and serves up our family documents, photos, music and so forth. I back it up fairly often, but someday when I have enough money to spare I would like to get a better rig. For now, food and mortgage come first (and Sallie Mae insists on being second).
Figure 1 below - From back in March 2008, when I first took the time to establish the baseline. Note the near-perfect score during that period. The term "Disruptive shutdown" refers to power outages affecting our entire house. I have a CyberPower UPS but didn't install the correct driver for it on WS08, so it really didn't help do an automatic shutdown. It just beeped until I got fed up and went over to do a shutdown. However, as you might guess, "disruptive shutdown" means I didn't bother and just let the UPS die and take the server down with it. Not ideal, but that's not unusual in my house either.

Figure 2 below shows late June to early July 2008, and another "disruptive shutdown" and you can see a string of eight "Information" icons in the Software (Un) Installs row. Those were Windows updates being installed (successfully). The two "application failures" were from a trial version of an unnamed application which was later removed. Those definitely hurt my reliability score as you can see. Keep in mind that even after correcting a problem it takes a while for your score to recover. This makes sense actually and it's a good thing since it keeps the scoring as realistic as possible.

Figure 3 below is another screenshot from early August 2008 showing the impact of installing Silverlight updates. It's interesting to see how my reliability score is still gradually recovering from the mess you see in Figure 2 above.

Figure 4 shows my current reliability score of 8.68 as of today (August 27, 2008). The yellow warnings are from me removing remnants from the unnamed application that caused all the issues in Figure 2.

Maybe you're not impressed, but I am. Not only because of the scores, given the crappy hardware this is running on and all the roles which are loaded, but I'm also impressed with the Reliability and Performance Monitoring features. The only thing I would want to see added in the future would be a way to print or export the reports to something like XML, XHTML, PDF, XPS or even Excel. Right now you can't export anything and there's no Print option either. Print-Screen is about your only built-in option. Regardless, this is cool stuff.
There's a lot of cool stuff going with Windows Home Server (WHS) lately. Especially now that PP1 has been out for a while and added some fixes and improvements. This short blog post by Paul Thurrott is but one example of the coolness WHS provides. But what caught my attention more than the backup and restore feature, was the comment about it sitting on a shelf. The implication being that you don't need to babysit, or even really tinker with it. It's become what I've always said a home computer needs to become in order to gain mass appeal: an appliance. Yes. Like a thermostat. You occassionally adjust it, but for the most part it does its thing and you don't have to worry about it. WHS is aimed in that direction obviously.
But in some respects so is Windows Server 2008. When the beta program ended, I did the celebratory upgrade to the RTM version and continued on. Happy. Content. Aside from just poking into the inerds to see what they look like, and how they work, I rarely have to tinker with it. It just runs. And to be totally honest here, aside from power outages (storms, etc.) my cheapy little workhorse WS08 server has NEVER had to be forcibly restarted. It has NEVER died. NEVER locked up either. Sure, patches may require a reboot here and there. But I don't have to peak through my fingers covering my eyes to worry about what scarry, obscure error and warning events are lurking in the event logs. I just don't see them very often. I don't have to restart hung or failed services. I don't have to force a restart. In short - It just friggin RUNS.
One test I did was to run a Suse 10 and a Ubuntu 8 server for several weeks without touching them and see whether WS08 required any more restarts. After four weeks, all three servers were prompting me for updates and a restart. But none had restarted for any reason on their own. Is this de facto proof that WS08 is "as reliable" as Ubuntu or Suse? No. But it did prove to me that unlike WS2K and WS03 (which is quite a bit improved over WS2K), WS08 was much more stable and worry-free. And it has remained so for as long as I've been using it. Keep in mind that this "workhorse" server of mine is a rather beat-up Dell OptiPlex GX 260 with 1GB of RAM. It serves up my photo library, music and documents and pretty much everything. God, I love it. Just thinking about it, I drift off into a foggy dream state. Me and my WS08 box running in slow-motion towards each other in a sunny field of tall grass. Someone hand me a tissue please?
Yes, I know, this went totally stupid at the end. Oh well.
Have you heard someone around you say something like "I would really like to play with Windows Server 2008, but I can't afford it"? Or maybe "I would like to play with WS08 but I don't have a *server* laying around to try it on." ?
You can hold their hand, offer a tissue and tell them there's help. The VMware Virtual Appliance Center has plenty of useful things to offer. One of them is a pre-built virtual machine with Windows Server 20008 and VMware Tools installed. 100 percent legal, evaluation version. And this is the "Enterprise" edition. So, you can download Virtual Server 1.x (or Virtual Server 2.0 RC) for FREE, and download a ready-to-run WS08 virtual appliance for FREE and start getting up to speed now. What are you waiting for?!
I think I blogged about this way back when WS08 was being released, but here it is "again": A download (32-bit, or 64-bit) which adds the role Windows Server Update Services (WSUS) 3.0 SP1. This was actually something that was available during the final stages of the WS08 Beta program. I was so eager for them to make this part of the initial RTM but it didn't happen and there wasn't any reason given for that at the time. I figured it was due to either something not being quite ready for RTM disk pressing or a bug was found. Who knows. In any case, this is nice to have even if it wasn't in the initial media release. Don't bother clicking on the "Knowledge Base Article" links (to 940518) because it hasn't been posted yet (as of Aug 26, 2008 anyway).
So, what's the big deal? Well, the "big" in "big deal" is entirely subjective, right? Of course it is. To some, it's a big deal because it allows you to add the WSUS server capability by checking a box in the Server Roles menu. For others it's a sleep inducer. I think it's somewhere in between. Whatever, if you have time to read this, you obviously don't have enough to do and should probably go ahead and download it and check it out.
Holy crap! This is getting tedious. I do not have any 64-bit or Itanium machines in my environment. If I did, it would signify one of two things: (A) I would have WAY too much time to play with computers and no life outside of that, or (B) my family packed up and left me alone in a prison on an island with nothing to do but work on 64-bit or Itanium computers.
WSUS 3.0 has indeed been a huge improvement over SUS 1.x and WUS 2.0, but there are still shortcomings you have to deal with. One of these is that it is incapable of excluding 64-bit and Itanium patches. I don't care what you do. You can select products and categories around those platforms all you want, they will still show up. It's sort of the Night of The Living Dead, part 20. Remember when SUS and WUS would choke on all the languages of .NET framework updates? You would be grinning away like you won the lottery whilst selecting only English in your options setup, only to drop your jaw on the floor in complete dismay over Korean, Croatian, Serbian and Japanese versions of the patch showing up everywhere. The fun of it all. Well, they didn't want you to feel left out in WSUS 3.0 so they've brought back ill-filtered updates for your enjoyment. Granted, it's not totally WSUS's fault. A lot of the blame rests on how the patches are built and cataloged. Many just do not publish their properties in a granular manner to allow for such filtering. That was the case with the .NET framework updates.
Here's the fun. If you're like me and don't manage any 64-bit or Itanium computers in your environment, you have to use the semi-functional "Search" feature and look for strings "x64", "64-bit" and "Itanium" and then select-all and right-click and choose Decline. I sure hope they do something to make it easier to avoid synchronizing 64-bit and Itanium updates upfront so I don't have to keep declining them all them time to keep my lists clean.
System Center Updates Publisher is what SCUP stands for. Once again, Microsoft didn't fund the Acronymn Department sufficiently this year. Remember when SUS almost became WUS? Thankfully they moved on to WSUS at least.
In their own words:
SCUP is a stand-alone tool that enables independent software vendors or line-of-business application developers to import software update catalogs, create and modify software update definitions, export update definitions to catalogs, and publish software updates information to a configured update server. By using updates Publisher to define software updates and publish them to the update server, administrators can begin detecting and deploying published updates to client and server computers in their organization.
Download it FREE at the Microsoft Download Center.
So all you in-house corporate developers out there, stop your whining about getting Microsoft to back you up with a tool to help you deploy your own patches to your own crap, oops, I mean software. I only have one question: What the heck is a "detectoid"? Is that like a bad medical condition, or is a new flavor of Altoids?
Read the online documentation
System Center Updates Publisher Catalogs
That's right. "Windows 7 Client" is now a new category within WSUS 3.0 consoles everywhere (well, as soon as they get their next synch). The heads-up courtesy of the WSUS Team Blog. Ok Ok, I'm overreacting a bit here I know. It's not really "here" yet, but we can all drink a beer to celebrate, right? As if we need a reason.

Phew! Long title for sure. Here's a stupid challenge for you: Drink three imported beers in quick succession and repeat the title of this post ten times as fast as you can. Go ahead, I'll wait... 
I ran across this on the TechNet blog site and decided to stop and read through it. This is a rather handy little document actually. It breaks down a few sample scenario-type SCCM setups and provides some basis for comparison as far as infrastructure, servers and objects, etc. What's nice is that they actually outlined a profile for a single-server site with 10,000 clients. That's the first time I've ever seen anyone officially state that this was something not laughable. Not that SCCM can't handle 10k clients from a single site server, but it seems (to my puny little world of experience, ok, stop laughing...) that anytime some engineer heard "10,000 clients" and "SMS" in the same paragraph, it immediately was translated into multiple sites or at least multiple site servers.
I once deployed a single SMS 2003 site with one primary/central server for just under 3,000 clients, spread over 22 continental US locations on pretty decent WAN links and was scoffed at by some. That environment used existing local site file servers as DP's so it was able to deploy things without choking the WAN. However, I got a boost of confidence two (unnamed) sources inside of Microsoft actually gave my plan the nod of approval. That was 3,000. This document starts at 10,000. The top scenario is a multi-site environment with 250,000 clients.
Only 18 pages to read and well worth the time. Download the document here.
Ok, not really a "survival kit" in the traditional sense. I don't have a magic download widget like CoreConfigurator or anything. This is actually more like an emergency list. You know, like if you live in areas where you need to keep a list of things handy in case the "big one" happens and you risk losing your house/apartment, etc. Like a hurricane or typhoon or raging fire.
Mark Russinovich once described WS08-Core as being more of a surgical modification than a ground-up design. Look for a more robust and architected "core" platform in the next Windows Server release. The more time you spend poking around in WS08-Core the more this will become obvious to you. However, it is still an impressive offering and while Linux/UNIX fanboys may scoff at it, it's hard to argue against how significant this is for Microsoft to have finally made a 180-degree turnaround and actually make good on such a promise. Indeed, the benefits are real: smaller overhead footprint, better performance, and increased security resulting from a smaller attack surface.
So if you plan on using Windows Server 2008 Core, or as I refer to it "WS08-Core", you need to become familiar with the following features and aspects:
-
-
CSCRIPT.exe - The age-old script engine. You will use it quite often to do chores you find painful to do otherwise.
-
CONTROL.exe - Used for invoking select (traditional) Control Panel applets such as time and date, regional settings, etc.
-
OCLIST.exe - List the roles and features installed on the server
-
-
PKGMGR.exe - Vista and WS08 Package Manager is a general maintenance utility (refer to
TechNet for more)
-
LOGMAN.exe - The CLI version of Performance Monitor (see
TechNet for more)
-
ServerManagerCMD.exe - A CLI version of the WS08 Server Manager, sort of.
-
NETSH.exe - Traditional network configuration shell
-
DCPROMO.exe - Promote and demote a domain controller (role must be enabled using OCSETUP first)
-
SC.exe - Create and manage services (refer to
KB251192 for more)
-
SCREGEDIT.wsf - A general utility script for managing registry settings (check out
Guy Teverovsky's blog for some good info)
-
NETDOM.exe - A general utility for managing domain computer
-
WEVTUTIL.exe - The CLI version of Event Viewer (refer to
TechNet for more)
-
WBADMIN.exe - The CLI version of NTBACKUP (refer to
TechNet for more)
An example of using ServerManagerCMD would be to add the PowerShell scripting feature to your WS08-Core server. The syntax would be:
#> servermanagercmd -Install PowerShell
Note that while Server Core is touted to be a CLI-based operating system, it's really more "Core-ISH" than true "Core". There are still some features which have not be ported to a CLI paradigm:
There are many more commands you can learn and employ to your benefit. I can't overstate the importance of the infamous command utilities like IPCONFIG, NSLOOKUP, REGSVR32, SHUTDOWN, TASKLIST or ICACLS.
Keep in mind that some commands listed work on WS08 (GUI) only, such as WINVER, while others work on both or only on WS08-Core. Some common tasks are handled differently as well. For example, you can't just jump into DCPROMO and make a domain controller with WS08-Core. As with WS08 (GUI), you must first add the Active Directory Domain Services role to the server, then use DCPROMO to promote it to the domain controller "role". However, with WS08-Core, there's no "wizard" to walk through when using DCPROMO. You need to first prepare an "answer file" with all the desired parameters spelled out, and then you hand it to DCPROMO to do the processing. This is only a small sampling obviously, and you will find much more information as you work with WS08-Core yourself. Hopefully this gives you enough to get going on your own for now. For more tips and information check out this article on TechNet.
It's often easier to manage WS08-Core from another WS08 (GUI) server or Vista client using remote administration tools, but knowing how to effectively administer WS08-Core at the console is definitely something to know.
There are quite a few source on the Internet describing how to turn on Automatic Updates inside Server Core. Most cover using the SCREGEDIT.WSF script to invoke the /AU option and set the general Automatic Updates option (1 to 4).
cscript c:\windows\system32\scregedit.wsf /au 4
net stop wuauserv
net start wuauserv
The value of 4 indicates automatic check for updates, and download and install at scheduled day and time. Then run wuauclt /detectnow to initiate a local scan and validation.
However, if patches are found to be needed, you won't be prompted to install them. That's one of the idiosyncracies of working in a command shell environment.
It would be nice if they beefed wuauclt up a bit for this environment, maybe to actually display some useful information (status, results, etc.). Here's my suggestions (as if anyone at Microsoft reads my gibberish)...
- wuauclt /detectnow
- automatic updates source: https://update.microsoft.com
- scanning for updates... (0% complete)
- updates found for this computer: 4 critical, 6 security, 3 device drivers, 12 optional
- install updates now? /N: _
- installing updates... (0% complete)
- updates have been installed.
- computer restart is required to complete updates... restart now? /N: _
I may be smoking crack of course, but I can dream, can't I? But what if you don't want to keep the default settings for which days or times to do a scan/install? The defaults are stored in the registry, in the same places found on a "normal" Windows Server 2008 machine. However, as with any Windows computer, this doesn't apply if the computer is being configured via Group Policy.
To change the day and time settings, simply enter "regedit" in the command console to open the Registry Editor. Like several other commands, this is still a GUI feature in the so-called GUI-less product (along with Notepad and TaskMgr). Navigate to the following location to...
HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ WindowsUpdate \ Auto Update
The settings are ScheduledInstallDay and ScheduledInstallTime and use the same values as any other Windows client.
So, I couldn't resist this post on Daniel Petri's web site describing how to install VMware Tools "additions" (chuckle) inside a Windows Server 2008 Core Edition guest machine. The thing that caught my attention was the caveate notes about having to hack it (a little)...
Note: Some websites claim that the installation of VMware Tools will stall, and that in order to complete it successfully you need to manually kill the RUNDLL process in Task Manager. Other sites claim that you need to run the installation by typing the following command:
Don't take this as criticism of the article, it's very good indeed. Actually, the problem is that the installer stops to prompt for three issues and is waiting for the user to click "ok" or "yes" or whatever. However, the z-order of the popup alerts puts them behind the installer dialog, so you never see then unless you just suddenly think to move it around in case it's hiding something behind it (it is!). The first two prompts involve DLL registration errors. The third asks if you want to update the Microsoft HTML help engine to display VMware Tools help content. Once you click past the two errors (they're harmless actually, both involve GUI features, so hey) and say "No" to the HTML Help update request, you're off to the finish line and the usual reboot prompt.