Microsoft released qchain.exe in 2001. This utility, which works with Windows 2000 and Windows NT, lets you chain hotfixes (i.e., install multiple hotfixes one after another without having to reboot in between). In the past, chaining was difficult because you had to install fixes in a specific order so that the update procedure wouldn't overwrite new system files with earlier versions. The problem with chaining was that the last hotfix applied "won." To address that problem, Qchain manages the file-replacement process by recording files in the registry's Pending File Rename queue. Qchain analyzes the contents of the Pending File Rename subkey and applies only the most current version of the files of all applied patches.

Listing A shows sample code that illustrates how to use Qchain in a script to deploy hotfixes. The first three lines of the sample script apply three hotfixes. The -z switch applies the hotfix without rebooting; -m applies the hotfix in unattended mode, without administrative intervention; and -q applies the hotfix in quiet mode, hiding the extract and copy actions that take place. If you're applying patches manually, you might want to leave out the -q switch to view the progress of the hotfix.

The fourth line in the script runs Qchain and specifies a file in which to log Qchain's results. The sample code puts the log file in the Logs directory on a server named Fschicago and specifies a unique filename based on the computer name and the date the script ran. Because you're likely to run Qchain at a later date, a unique log name prevents you from overwriting older logs. Finally, the Shutdown utility (from the Microsoft Windows 2000 Server Resource Kit or the Microsoft Windows NT Server Resource Kit) performs a local reboot of the machine by using the /l and /r switches. The /l switch performs a logoff; the /r switch performs a clean shutdown and a restart.