Jump to content

Welcome to MSFN Forum
Register now to gain access to all of our features. Once registered and logged in, you will be able to create topics, post replies to existing threads, give reputation to your fellow members, get your own private messenger, post status updates, manage your profile and so much more. This message will be removed once you have signed in.
Login to Account Create an Account



Photo

GUIDE: Download Everything Microsoft (MSDBuild v5.5)

- - - - -

  • Please log in to reply
202 replies to this topic

#1
DarkShadows

DarkShadows

    The brighter the light, the darker the shadows.

  • Member
  • PipPip
  • 272 posts
  • Joined 12-January 05

GUIDE: Download Everything Microsoft

Installing Microsoft Update ActiveX Controls Unattended using MSDBuild

Credits "We all stand on the backs of giants."

Author: Kenneth R. Alcock (DarkShadows on MSFN.org)
Version: 5.5
Last Updated: 06:30 PM 05/28/2009 (GMT-5 +1 during DST)
Source Materials:

Background

There are four Microsoft update web sites. (However, you can only use three of them at once, since Microsoft Update replaces Windows Update.)

  • Windows Update
  • Microsoft Update
  • Office Update
  • Microsoft Update Catalog
When you first browse any of these sites on a fresh Windows XP installation using Internet Explorer, you will be prompted to install and register one or more ActiveX controls before the web site will work, all of which hook into Windows Genuine Advantage (WGA) on Windows XP, ensuring that you are running Genuine Microsoft Software. On retail, upgrade, and OEM Windows XP SKUs, WGA hooks into Windows Product Activation (WPA) to ensure that your Windows XP is legitimately licensed and activated. Office has an additional Genuine Advantage licensing check. There are some Windows updates, which you must install before you can effectively utilize most of these update web sites, or install the updates downloaded from them. And there is an ActiveX control installed with some Office versions that must be authorized to run in Internet Explorer, before the Office Update web site will work.

Objective

To:
Integrate the following into an unattended XPCD for Windows XP SP2/SP3 with Internet Explorer 6, 7, or 8 (either integrated or installed later):

  • Windows Genuine Advantage Validation Tool ActiveX – LegitCheckControl.cab
  • Windows Update Web Control Class ActiveX – wuweb_site.cab
  • Microsoft Update Web Control Class ActiveX – muweb_site.cab
  • MS Update Catalog Web Control Class ActiveX – MUCatalogWebControl.cab
  • Office Genuine Advantage Validation Tool ActiveX – OGAControl.cab
  • Office Update Installation Engine ActiveX – opuc4.cab
  • Windows Installer 4.5 v3 (4.5.6001.22159) Redistributable – KB942288
  • Permanent Copy of the Windows Package Installer - KB898461
  • Windows Genuine Advantage Notifications v1.9.0040.0 - KB905474
  • Windows Update Agent v7.2.6001.788
In a way that:
  • Streamlines downloading the most recent versions of all the ActiveX controls and prerequisite Windows updates directly from Microsoft.
  • Allows one to build an installer (MSDownloads.exe), which will install all of the ActiveX controls during unattended Windows XP installation.
  • Does not require an installation software suite--one only need download the free tools I provide in this guide to create the installer.
  • Uses open-source-like techniques within the installer, allowing anyone with technical knowledge to see, report, and trouble-shoot any issues.
  • Describes the process in technical detail so you are aware what happens.
  • Automates as much of the process as is practical, to reduce human error.
  • Ensures Windows/Microsoft/Office Updates work without further installs.
  • Ensures all Internet Explorer ActiveX controls are not damaged.
  • Handles documented issues with ActiveX registration.
  • Allows one to pre-hide unwanted updates in Windows/Microsoft Update.
  • Creates shortcuts for relative update web sites in the Start Menu.

    Posted Image
So that:
  • The ActiveX controls are simple to integrate into an XPCD.
  • Installation is as close to supported-by-Microsoft as possible.
  • Users are not prompted to install or run any ActiveX control from any Microsoft updates web site at first boot.

Internet Explorer ActiveX Controls, and Their Setup Information Files

All correctly installed and registered Internet Explorer ActiveX controls are listed by (somewhat) proper name in: %WinDir%\Downloaded Program Files. Behind the scenes, the Windows Registry provides this information. If you right-click on any listed add-on and select "Properties" from the context menu, you can get a lot of information about the add-on. The General tab on the Properties dialog lists an item named Code Base, which is the URL that brought a downloaded add-on to the PC, and the same URL it will go back to, to check for new versions of any of its files. The Dependency tab will list which files the add-on depends on; almost always one file is an .inf file. Without this .inf file, some properties might be inaccessible, or the add-on may appear listed as "Damaged" in the Downloaded Programs Folder. Damaged add-ons might not update properly.

Updating an ActiveX control add-on automatically downloads the most recent files for it to your PC. The ActiveX control must be correctly registered to facilitate this function. This is why Microsoft ActiveX controls come inside cabinet (.cab) files, which each contain a dynamic link library (.dll) file (the ActiveX control itself), and a Setup Information (.inf) file. Both files usually (but not always) have the same base file name. ActiveX control .inf files use a different structure than those used to install hardware drivers; they tell Internet Explorer how to trigger a proper (re)registration of the .dll, which happens in a blink when you first download the ActiveX control. There is other information in the file as well. But, if you just include the .dll file in your XPCD, registering it from a Windows command line (or script) using regsvr32.exe, you usually do not register the ActiveX control add-on such that it can be updated.

Provided they support updating, properly registered Internet Explorer ActiveX controls can usually be updated semi-automatically by:

  • From the %WinDir%\Downloaded Program Files folder in Windows Explorer:
    Right-click the add-on, and select Update from the context menu.
  • From Internet Explorer 6 - Tools Menu - Manage Addons:
    Select the add-on, and click on the Update ActiveX button.
    NOTE: Microsoft removed this feature in Internet Explorer 7.
This guide was first written for Windows XP SP2 and IE6. After following that version, IE6 would never prompt users to download and install any of the related ActiveX controls (unless a newer version had been released). However, IE7 uses a different security model for ActiveX controls. So after following this guide, IE7 required each user to authorize each ActiveX control, before allowing the control to run on that user's account (once per-user, per-current-version of that ActiveX control). This lead many readers to believe this guide did not work for Windows XP with IE7, which was not entirely true. Astute observers may have noted that after following this guide, the IE7 Information Bar would say: "This website wants to run the following add-on: ...", and not "This website wants to install the following add-on: ...". Also, the related context menu item will say: "Run ActiveX Control", and not: "Install ActiveX Control". If an Administrator account authorized any of the related ActiveX controls and logged out, a second Administrator would still have to authorize the same ActiveX control under his own account. Internet Explorer 7 ActiveX control authorization is a per-user setting. Internet Explorer 8 goes even further, making ActiveX control authorization not only a per-user setting, but per-domain as well.

Posted Image

Thanks to ricktendo64, MSDownloads.exe (v3.1 and later) adds the correct HKCU registry settings to pre-authorize all of the ActiveX controls in IE7 on a per-user basis. And thanks to Rich_Weiss, MSDownloads.exe (v5.4 and later) adds the correct HKCU registry settings to pre-authorize the ActiveX controls in IE8 for the microsoft.com domain. MSDownloads.exe should be installed from T-12 or T-13, which is a great time to set HKCU registry settings to the Default User Profile, which are then propagated to each new local user account as it is created later.

Methodology

I believe in teaching people to fish, rather than just giving them a fish. However, I also like to automate things that: take substantial time, are repeated often, or that get messy when done manually (like this project). I first started this project as a guide, by bringing together information discussed in several disparate threads on MSFN.org. I also added some more in-depth and up-to-date information that explained in-detail what needed to take place. At first, I provided the .inf files I developed to install the ActiveX control that you could use to create your own installer and then explained a generic process how to create that installer. But this approach generated a lot of manual work for my readers and too many questions. Just keeping every component up-to-date manually can take some real time and effort, and my readers (and even I) are likely to skip or forget something. The required components are a somewhat moving target, since Microsoft often changes the way they are released. A Windows service pack and new Internet Explorer version were released during the evolution of this project, which changed how some components work together. (Microsoft will also release yet another version of Internet Explorer soon.) While Microsoft updates many of this project's components frequently, some key .dlls shared between them are not always updated to the same version in a timely manner. All of this conspires to make a manual process very tedious and error-prone.
I now maintain this project as three interdependent and inseparable parts:

  • The technical information you are reading now, which discusses where each component needs to be added to your XPCD and why. I have tried to maintain all collective historical knowledge in this article so people understand what takes place and why, as well as have some reference of how things have evolved over time. However, everything is now described in terms of using my automated tools: MSDBuild.exe, MSDownloads.exe, and their component scripts. Scripts are just plain text files, which allows you to review everything and ensure what's being done to your PC.
  • MSDBuild.exe (MSDownloads.exe Builder). This is a collection of scripts (.cmd, .inf, and .vbs) that I packaged into a WinRar SFX that does all of the work to create your own MSDownloads.exe installer. MSDBuild.exe and MSDownloads.exe are both described in more detail later.
  • MSDownloads.ulz. This is an update list for Windows Updates Downloader (WUD) written by Jean-Sebastien Carle (JCarle on MSFN.org), which you must use to download everything. Downloading with WUD, helps ensure all components get downloaded: painlessly, efficiently, and to the same folder. Downloading it all manually, increases the likelihood of error. NOTE: Read Issue 02. Languages Other Than English, if applicable.
I will not publish my ActiveX control Setup Information files (Inst*.inf), nor will I provide a direct download link to MSDBuild.exe. So don't ask. I am compelling everyone to download everything with WUD for good reasons.

First, if I can avoid it, I don't want to release a new version of this project every time Microsoft changes something minor, which happens every few months. In the past, I manually updated the Setup Information files with each new ActiveX control version to reflect the current version. Now, I no longer create static Inst*.inf files for use in this project. Instead, MSDBuild now starts with Inst*.in_ files, which are not complete, and will not work by themselves. Also, MSDBuild requires the requisite components to be downloaded to the same folder, where it unpacks some of them, and checks inside for the most recent ActiveX control .dll versions to use in your installer. MSDBuild creates each ActiveX control's Setup Information file on-the-fly, based on the date and version of the .dll file used, and it updates the Microsoft .inf file for the ActiveX control accordingly. In order to address Issue 01, MSDownloads.exe installer appends correct registry subkey string assignments to the end of each Inst*.inf file during installation; this cannot be done in advance. So the Inst*.inf files are created dynamically and as such cannot be shared by themselves.

Second, there are something like ten Microsoft downloads (plus MSDBuild) that we must download, which are scattered everywhere. I have found the Microsoft static download URLs for most of them, which are reusable URLs that do not change from version to version. All of this information ends up in Windows Updates Downloader via my update list (MSDownloads.ulz), which allows you to download them all at once with a few mouse clicks. Simple. NOTE: Read Issue 02. Languages Other Than English, if applicable.

Third, most download URLs in my WUD update list (MSDownloads.ulz) are reusable, which means you can just redownload those components whenever Microsoft releases a newer version. Sometimes, I quietly update MSDBuild with minor (mostly cosmetic) changes, without advertising a new version. So always redownload everything, to ensure you are using the most recent version of Microsoft's components and of MSDBuild. In such cases, you need not wait for me to update this guide before building your own up-to-date installer. Just click the WUD checkbox next to the MSDownloads Category, and click the Download button. When redownloading to the same folder, WUD will overwrite all older file versions with the newer ones. Simple.

And finally, some component downloads URLs change. I use free file hosting, so the MSDBuild URL might change between guide versions. Some prerequisite Microsoft updates are downloaded using dynamic URLs, which change from version to version. When something like this changes, I update the guide providing a new update list (MSDownloads.ulz) for WUD. Once WUD has been installed on your engineering PC, keeping up-to-date with this project is much easier. You just click the MSDownloads.ulz link in this article, which will download the newest MSDownloads.ulz version and automatically import it directly into WUD. Afterward, you can immediately redownload all the new requisite components, at once, with just a few mouse clicks in WUD. Simple.

So by forcing everyone to use Windows Updates Downloader, I am actually making people's life easier, not harder (especially mine). Redownloading everything is much quicker, much less hassle, and automated with Windows Updates Downloader. Keeping the download URLs up-to-date is much easier and much less hassle for both you and me. We are both less likely to forget something, and MSDBuild finds everything it is looking for. Simple

How to Download Everything and Create Your MSDownloads.exe Installer

I have streamlined, automated, and documented the process to download all the requisite components from Microsoft and to create your own ActiveX control installer named MSDownloads.exe (discussed in-detail later).

  • Download Windows Updates Downloader (WUD) by Jean-Sebastien Carle (JCarle on MSFN.org) from http://wud.jcarle.com/ and install it.
    WUD is freeware with no ads or spyware, and it won't hurt you. It will make your life a lot easier. Install this first before doing anything!
  • Click the MSDownloads.ulz download link in this article. This is an update list that will automatically import itself into WUD.
    Posted Image
    English – Attached File  MSDownloads.ulz   3.5KB   1070 downloads
    Spanish – Attached File  MSDownloadsESN.ulz   1.93KB   82 downloads(Thanks to: Rodrigo Fernandez hipo_loco on MSFN.org)

  • In Windows Updates Downloader:
    • Select the MSDownloads Update List.
    • Select (and note) your Download Folder location.
      NOTE: WUD creates subfolders under this folder, as per options that you set. I suggest an empty folder not used for other purposes.
    • Click the Show Options button and enable these options:
      • Product as subfolder
      • Category as subfolder
      • Show published dates
      • Show description tooltips
      • Remove unlisted files
        CAUTION: Remove unlisted files tells WUD to delete all files not listed in my update list from your download folder (Product subfolder or below if the Product as Subfolder option is enabled). Do NOT store files in the download folder that you want to keep long-term, or they will be deleted the next time you download the components with WUD!
    • Check the box next to the MSDownloads category, to select all the downloads. (Expand the category by clicking the "+" in the tree.)
      Posted Image
    • Click Download. WUD downloads all the components in succession.
  • OPTIONAL: Read and follow the DataStore.edb section of this guide to obtain a customized copy of DataStore.edb. Copy this file to the MSDownloads downloads folder.
    NOTE: If you do not include your own DataStore.edb file, MSDBuild will use a file I provide, which is named DataStore.ed_.
  • Open the MSDownloads download folder, and double-click on MSDBuild.exe, which will extract itself and run MSDBuild.cmd.
    NOTE: MSDBuild.exe and MSDBuild.cmd are discussed in-detail later on.
  • MSDBuild.cmd will prompt you to delete the work files. Enter "N", if you wish to customize your MSDownloads.exe installer.
    NOTE: When the MSDBuild.cmd script completes, MSDownloads.exe will exist in the MSDownloads download folder.
  • OPTIONAL: You can customize certain aspects of your installer. To customize your installer:
    • Copy SFX-MSD.ini
      from: the WorkMSDB subfolder
      to: the MSDownloads download folder.
    • Edit your own customized SFX-MSD.ini and save it
      to: the MSDownloads download folder.
    • Re-execute either MSDBuild.cmd or MSDBuild.exe.
    MSDBuild will recreate MSDownloads.exe, this time using your version of SFX-MSD.ini from the MSDownloads download folder, which it will copy to the WorkMSDB subfolder (overwriting the one there).

    NOTE: MSDBuild never deletes your SFX-MSD.ini or DataStore.edb files from the MSDownloads download folder (but WUD might--see above).
    NOTE: To reset SFX-MSD.ini back to default values, delete your version from the download folder and restart the process from step 5.
For the most part, the process to create your MSDownloads.exe installer remains the same from version-to-version. Not many download URLs change; some Microsoft updates are downloaded with dynamic URLs, which change from version to version. I use free file hosting, so the MSDBuild download URL might change. When such things change, I update the guide and provide a new update list (MSDownloads.ulz) for WUD. Subscribe to this MSFN discussion thread to ensure that you are notified of any new versions. When I update this guide and release a new MSDBuild version, always do the following:
  • Read the Version History, and the related detailed sections for changes.
  • Re-download MSDownloads.ulz. This update list should automatically import itself into Windows Updates Downloader (overwriting the old one).
    NOTE: If you import a new MSDownloads.ulz while WUD is running, you must refresh WUD before it will use the new update list, by clicking the button with the double-green-arrow icon.
  • Open Windows Updates Downloader and select the MSDownloads Category to force all related files (including my MSDBuild.exe) to be re-downloaded.
  • Recreate MSDownloads.exe by double-clicking on MSDBuild.exe.
NOTE: I will not version the Guide or MSDBuild when the only change is that Microsoft has released a new version of a requisite component whose download URL is static and did not change. This process expects you to (re)download everything before (re)building your MSDownloads.exe installer. I will only release new versions when requisite components are added or removed; when dynamic download URLs change, or when I add improvements or bug fixes to MSDBuild.

Include Prerequisite Windows Updates and MSDownload.exe in Your XPCD

Below is a list of Windows updates that you must install first, before you can effectively utilize any of the Microsoft update web sites without them prompting you to install something; or, before you can install the updates downloaded from them. MSDBuild will unpack a few of these updates, in order to ensure it uses the most recent .dll file for a related ActiveX control. Windows Updates Downloader will download all these updates for you, unless you are not using English (see Issue 02. Languages Other Than English).

You must correctly integrate (or slipstream) all these Windows updates into your XPCD source. All of the updates support the SVCPACK Integration Method discussed in the MSFN Unattended Guide. And all but Windows Update Agent support the Type I SVCPACK.INF or the /INTEGRATE methods discussed in the MSFN Unattended Guide. If you use a slipstreaming or integration tool (such as nLite) to add these prerequisite Windows updates to your XPCD source, then of course you do not need to add them a second time. However, you should ensure that each update is slipstreamed or integrated before MSDownloads.exe. While it is up to you how to install these updates, this guide will discuss how to integrate them from svcpack.inf. At the end, is a Sample svcpack.inf File, which shows where everything should go.

Windows Installer 4.5 v3 (4.5.6001.22159) Redistributable – KB942288

Prerequisite to install the newest Microsoft update and .msi packages.

NOTE: Windows Installer 4.5 v3 (4.5.6001.22159) Redistributable – KB942288 supersedes Windows Installer 3.1 v2 (3.1.4000.2435) - KB893803--the original prerequisite for Windows XP SP2 (included in SP3).

Knowledgebase: KB942288

Integrate into your XPCD with the /INTEGRATE switch. This update adds the KB942288.cat and KB942288.exe entries (see Sample svcpack.inf File).

Permanent Copy of Windows Package Installer – KB898461

Prerequisite to install more recent Microsoft updates that do not include the update software as part of the payload.

NOTE: Microsoft knowledgebase article KB946480 List of fixes included in Windows XP Service Pack 3 states that Windows XP SP3 includes KB898461. However, Windows Update will still list KB898461 as a required update after installing Windows XP SP3.

Knowledgebase: KB898461

Integrate into your XPCD with the /INTEGRATE switch. This update adds the KB898461.cat and KB898461.exe entries (see Sample svcpack.inf File).

Windows Genuine Advantage Notifications v1.9.0040.0 - KB905474

This guide used to list KB905747 Windows Genuine Advantage Notifications (WGAN) as a prerequisite, then it was made optional, and more recently it was made a prerequisite again. Really, it's up to you. If you don't install WGAN, it will be listed in Windows/Microsoft Update. However, it is not really a requirement for the correct function of Windows or Windows Update. You can always hide KB905747 in Windows/Microsoft Update, but it will be relisted again whenever Microsoft releases a new version, which they seem to be doing much more frequently now.

The reason why WGAN was ever a requirement for MSDownloads.exe has always been where to acquire the current LegitCheckControl.dll (Windows Genuine Advantage Validation Tool). First WGAN had the most recent version, then for a year or more LegitCheckControl.cab had it, then in 2008 WGAN had it again (Guide v4.5), now LegitCheckControl.cab has it again (Guide v5.0). It really becomes a cat-and-mouse game where to acquire the most recent version of LegitCheckControl.dll. MSDBuild now takes the guess work out of this. MSDBuild v4.5 and later will always use the most recent version of LegitCheckControl.dll from any of the following sources:

  • LegitCheckControl.cab
  • KB905747 Windows Genuine Advantage Notifications
  • The System32 folder of the PC you execute MSDBuild on (Windows XP only)
NOTE: Even if you don't use WGAN, download it so MSDBuild can unpack it!

WARNING: Some older versions of the KB905747 download will not install on Windows XP SP3, so ensure you download the most recent version!

Knowledgebase: KB905474 Download Page SearchURL

The current downloaded file is: WindowsXP-KB905474-<LANG>-x86.exe.
NOTE: Your language will replace "<LANG>". For example, English = ENU.

NOTE: On the KB905474 v1.8.0031.0 download page, Microsoft mentioned that future WGAN updates will be received automatically. Windows Update pushed out KB905474 v1.8.0031.9 shortly afterward. The download page for both updates were the same but the file download URLs changed. I guess Microsoft thought that made things too easy on us, because they just gave the latest version (v1.9.0040.0) a new download page. The download URL for the file has always been dynamic and changes from version to version. Therefore, whenever Microsoft releases a new WGAN version, I will release a new version of my WUD update list (MSDownloads.ulz) with the new dynamic URL. You must then redownload MSDownloads.ulz to update WUD with this new information. If I am behind in updating my WUD list, Use the SearchURL I have provided above to search for the download page of the most current version of WGAN manually.

WGAN KB905474 updates prior to v1.9.0040.0 were IExpress packages that did not support Type I integration or slipstreaming. IExpress packages can be unpacked using: WinRar, 7-Zip, or the command below:

WindowsXP-KB905474-<LANG>-x86-Standalone.exe /C /T:"%FolderPath%"
WGAN KB905474 updates prior to v1.9.0040.0 contained a payload of a single file named WgaNotifyPackageStandalone.exe (the inner package), which was a Windows Update package that supported Type I integration and slipstreaming.

WGAN KB905474 updates v1.9.0040.0 and later are actually Windows Update packages, but they still do not support Type I integration or slipstreaming. This is because of the payload executable. Windows Update packages can be unpacked using: WinRar, 7-Zip, or the command below:

WindowsXP-KB905474-<LANG>-x86.exe /U /X:"%FolderPath%"
WGAN KB905474 updates after v1.9.0040.0 contain a payload of three files:
  • wga_eula.txt
  • wganotifypackageinner.exe - the inner package (Windows Update package)
  • wgasetup.exe - prompts to accept EULA before installing inner package.
The inner package, wganotifypackageinner.exe, is a Windows Update package that supports Type I integration and slipstreaming. The outer package for WGAN KB905474 v1.9.0040.0 and later also sets some registry settings before installing the inner package (e.g. to record that the EULA is accepted). Without these registry settings, KB905474 would still be listed in Micrsoft Update. As of MSDBuild v5.5, the InstWGAV.inf Setup Information file sets these registry settings, so that you can integrate the inner package.

Regardless of the update's outer package type (IExpress or Windows Update), it is the payload's inner package that we want. I always extract the inner package, discard the outer package, and rename the inner package the same as the outer package to facilitate my personal integration process--it's much easier to keep track of KB numbers.

NOTE: MSDBuild automatically takes care of this extraction and renaming for you (overwriting the outer package with the renamed inner package).

NON-ENGLISH: If you aren't using English, don't download WGAN KB905474 with WUD, instead download the version for your language to the MSDownloads download folder. MSDBuild should be able to unpack any WGAN KB905474 download package correctly. (See Issue 02.)

Integrate the renamed inner package into your XPCD with the /INTEGRATE switch. This update adds the WgaNotify.cat and WgaNotify.exe entries see Sample svcpack.inf File).

Windows Update Agent v7.2.6001.788

Prerequisite ensuring the current version of Windows Update is installed.

Knowledgebase: http://support.microsoft.com/kb/946928

Static URL for Windows XP 32-bit Pro:
http://go.microsoft....k/?LinkID=91237

Static URL for Windows XP 64-bit Pro (not supported by MSDbuild):
http://go.microsoft....k/?LinkID=91238

Copy WindowsUpdateAgent30-x86.exe to your XPCD\I386\SVCPACK folder and add an entry for it to svcpack.inf, under the [SetupHotfixesToRun] section, and after all the integrated hotfixes (see Sample svcpack.inf File).

NOTE: This guide used to documented extracting WindowsUpdateAgent30-x86.exe, which is a Windows Update package, in order to execute the payload file (WUSetup.exe) silently using the same switches shown in the Sample svcpack.inf File. But testing the most recent version has shown that the WindowsUpdateAgent30-x86.exe package will actually accept the parameters and pass them along to WUSetup.exe. Thus, extraction is really not required anymore (if it ever was in the first place).

NON-ENGLISH: When WindowsUpdateAgent30-x86.exe is extracted, I believe its internal subfolders use the same language abbreviations that are required for the URLs discussed in Issue 02 below. If you are installing Windows XP in another language, you may want to extract WindowsUpdateAgent30-x86.exe and peek inside to take note of the language abbreviations used. The command below will extract the download to a subfolder of the same name.

WindowsUpdateAgent30-x86.exe /U /X:"%CD%\WindowsUpdateAgent30-x86"

MSDownloads.exe (Microsoft Downloads ActiveX Control Installer)

MSDownloads.exe (Microsoft Downloads ActiveX Control Installer) is a 7-Zip SFX I developed to install all the related ActiveX controls required to run all the Microsoft update web sites. MSDownloads.exe is the final output of executing MSDBuild.exe (discussed in-detail later).

MSDownloads.exe does the following:

  • Extracts all its files to a subfolder under %TEMP%.
  • Executes the SFX-MSD.cmd script, via a hidden command console, which:
  • Ensures Windows XP is running.
  • Appends the correct Module Usage registry key string assignments to the end of each Setup information (Inst*.inf) script, which must be done at installation to account for any customized Windows folder name or system drive letter. (See Issue 01 for more details.)
  • Checks for all required Setup information (Inst*.inf) scripts required for each ActiveX control (some are dependent on others).
  • Installs all Setup information (Inst*.inf) scripts for each update web site specified in SFX-MSD.ini whose requirements have been met (Windows Update is mandatory). Each Setup Information script will:
  • Copy the ActiveX control's files to the correct folders.
  • Properly register the ActiveX control.
  • Properly register the Add-On in Internet Explorer.
  • Properly register all interfaces between the ActiveX control and any other ActiveX control that it relies on.
  • Add HKCU registry settings, suppressing Internet Explorer from prompting the user to authorize and run the ActiveX control.
  • Create Start Menu shortcuts (directly in Start Menu), if required.
[*] Deletes its subfolder under %TEMP% after installation completes.
[/list]Here's how to add MSDownloads.exe to your XPCD (use A or B, not both):
  • From SVCPack (T-13):
    • Copy MSDownloads.exe to XPCD Source\I386\SVCPACK.
    • Add a MSDownloads.exe entry to XPCD Source\I386\svcpack.inf, under the [SetupHotfixesToRun] section, and after all the other entries discussed in this guide (see Sample svcpack.inf File).
  • From CmdLines.txt (T-12):
    • Copy MSDownloads.exe to XPCD Source\$OEM$
    • Add a MSDownloads.exe entry to XPCD Source\$OEM$\cmdlines.txt.
NOTE: MSDownloads.exe cannot be installed from RunOnceEx, or if Windows XP is up and running, unless you stop the Automatic Updates Service, which locks DataStore.edb (the Windows Update database file). You must also ensure the service is restarted afterward.

Sample svcpack.inf File

Once everything is added, your svcpack.inf should look something like this:

[ProductCatalogsToInstall]
KBnnnnnn.cat
KB942288.cat  <---------------------------------------- added by /INTEGRATE
KB898461.cat  <---------------------------------------- added by /INTEGRATE
WgaNotify.cat <---------------------------------------- added by /INTEGRATE
...	
KBnnnnnn.cat
[SetupHotfixesToRun]
KBnnnnnn.exe /q /n /z
KB942288.exe /q /n /z  <------------------------------- added by /INTEGRATE
KB898461.exe /q /n /z  <------------------------------- added by /INTEGRATE
WgaNotify.exe /q /n /z <------------------------------- added by /INTEGRATE
...
KBnnnnnn.exe /q /n /z
WindowsUpdateAgent30-x86.exe /wuforce /quiet /norestart   <--manually added
QChain.exe												<--manually added
MSDownloads.exe										   <--manually added
NOTE: Other, unrelated Windows updates are shown as "KBnnnnnn" and "..." above. The "/q /n /z" switches added to each .exe are the result of using the /INTEGRATE switch to integrate those Windows updates.

ActiveX Control Technical Reference

The next few sections are for technical reference and document the following aspects of each ActiveX control:

  • What the ActiveX control is and which update web sites utilize it.
  • Which downloaded cabinet file contains the ActiveX control.
  • What URL downloads the ActiveX control's cabinet (watch word wrapping).
  • Which related Windows Updates contain the ActiveX control's .dll.
  • What files are included with the ActiveX control.
  • Which Setup Information script (Inst*.inf) MSDownloads.exe will use to install the ActiveX control.
  • What shortcuts are created for the related web site (if any).
    NOTE: Shortcuts are created directly in the Start Menu (All Users).
  • Any pertinent or historical information about the ActiveX control.
While Windows Updates Downloader automatically downloads each ActiveX control's cabinet file for you, you can still download each manually. Just paste the URL directly into the Internet Explorer address field and press <Enter>. This will cause the cabinet file to download and open in Windows Explorer, from which you may extract the files inside, by click-dragging them and dropping them into another destination folder.

Windows Genuine Advantage Validation Tool (ActiveX)

This ActiveX control validates that you are using a genuine and activated Windows XP license. All four Microsoft update web sites require that this ActiveX control is correctly installed, and that Windows XP is activated (Retail, Upgrade, and OEM license SKUs only), before you may use the site.

  • Windows Update
  • Microsoft Update
  • Office Update
  • Microsoft Update Catalog
Cabinet File: LegitCheckControl.cab
Static URL: http://go.microsoft....k/?linkid=39204
Windows Update: Windows Genuine Advantage Notifications - KB905474
Script: InstWGAV.inf
Shortcut: None

Files:							  Destination Folder
---------------------------------------------------------------------------
LegitCheckControl.dll			   %WinDir%\System32
LegitCheckControl.inf			   %WinDir%\Downloaded Program Files
NOTE: Older versions of the Windows Genuine Advantage Validation Tool also included the file GWFSPIDGen.dll, which has been deprecated and is no longer included with the newer versions of this tool.

Microsoft releases new versions of LegitCheckControl.dll about a few times each year. Almost always, LegitCheckControl.cab contains the most current version of LegitCheckControl.dll. However, whenever Microsoft releases a new version of Windows Genuine Advantage Notifications - KB905474, that update is more likely to contain the most current version, at least until Microsoft gets around to updating LegitCheckControl.cab (which they are often slow at doing). Therefore, you should always (re)download both the cabinet and WGAN with Windows Updates Downloader. MSDBuild inspects the file versions of LegitCheckControl.dll inside both the cabinet and WGAN (and in your System32 folder if running on Windows XP), and always uses the most recent version inside your MSDownload.exe installer.

Windows Update Web Control Class (ActiveX)

This ActiveX control permits you to download updates and add-ons from:

  • Windows Update
  • Microsoft Update
Cabinet File: wuweb_site.cab
Static URL: http://update.microsoft.com/.../wuweb_site.cab
Windows Update: Windows Update Agent
Script: InstWUWC.inf
Shortcut: None--by default, Windows XP already includes a shortcut.

Files:							  Destination Folder
---------------------------------------------------------------------------
wuweb.dll						   %WinDir%\System32
wuweb.inf						   %WinDir%\Downloaded Program Files
wuweb.cat						   * Not installed by InstWUWC.inf
NOTE: InstWUWC.inf does nothing explicitly with wuweb.cat. I'm not sure how to install .cat files from a Setup Information file. Still, wuweb.cat is included inside MSDownloads.exe. I test extensively and everything always works, so I wouldn't really worry about this too much.

Usually, Microsoft keeps the version of wuweb.dll in lock-step with that of muweb.dll (Microsoft Update Web Control Class), updating both about once a year, at the same time they release a new version of Windows Update Agent (WUA). Almost always, wuweb_site.cab contains the most current version of wuweb.dll. However, whenever Microsoft releases a new versions of WUA, that update is more likely to contain the most current version, at least until Microsoft gets around to updating wuweb_site.cab (which they are often slow at doing). Therefore, you should always (re)download both the cabinet and WUA with Windows Updates Downloader. MSDBuild inspects the file versions of wuweb.dll inside both the cabinet and WUA (and in your System32 folder if running on Windows XP), and always uses the most recent version inside your MSDownload.exe installer.

Microsoft Update Web Control Class (ActiveX)

This ActiveX control permits you to download updates and add-ons from:

  • Microsoft Update
Cabinet File: muweb_site.cab
Static URL: http://update.microsoft.com/.../muweb_site.cab
Windows Update: None
Script: InstMUWC.inf
Shortcut: Adds Microsoft Update and removes Windows Update. (After installing the Microsoft Update Web Control Class, the Windows Update shortcut would end up taking you to the Microsoft Update web site instead of Windows Update.)

Files:							  Destination Folder
---------------------------------------------------------------------------
muweb.dll						   %WinDir%\System32
muweb.inf						   %WinDir%\Downloaded Program Files
muweb.cat						   * Not installed by InstMUWC.inf
DataStore.edb *					 %WinDir%\SoftwareDistribution\DataStore
NOTE: InstMUWC.inf does nothing explicitly with muweb.cat. I'm not sure how to install .cat files from a Setup Information file. Still, muweb.cat is included inside MSDownloads.exe. I test extensively and everything always works, so I wouldn't really worry about this too much.

NOTE: DataStore.edb is not part of the ActiveX control downloaded from Microsoft. Read the DataStore.edb section for more information.

Usually, Microsoft keeps the muweb.dll version in lock-step with that of wuweb.dll (Windows Update Web Control Class), updating both about once a year, at the same time they release a new version of Windows Update Agent (WUA). But unlike wuweb.dll, there is currently no known Windows Update that contains muweb.dll. Still, some MSDBuild users have reported seeing a newer version of muweb.dll in their System32 folder than was contained in the latest muweb_site.cab available at the same time. Therefore, MSDBuild inspects the file versions of muweb.dll inside both the cabinet and in your System32 folder (if running on Windows XP), and always uses the most recent version inside your MSDownload.exe installer.

Microsoft Update Catalog Web Control Class (ActiveX)

This ActiveX control permits you to download updates and add-ons from:

  • Microsoft Update Catalog
Microsoft Update Catalog is a great place to download multiple updates at one time, including updates for more than one Windows version or language, or even more than one version for some updates.

Cabinet File: MuCatalogWebControl.cab
Static URL: http://catalog.updat...gWebControl.cab
Windows Update: None
Script: InstMCWC.inf
Shortcut: Adds Microsoft Update Catalog

Files:								Destination Folder
---------------------------------------------------------------------------
MicrosoftUpdateCatalogWebControl.dll  %WinDir%\System32
MicrosoftUpdateCatalogWebControl.inf  %WinDir%\Downloaded Program Files
There is nothing out of the ordinary for this ActiveX control.

Office Genuine Advantage Validation Tool (ActiveX)

This ActiveX control validates that you are using a genuine and activated Microsoft Office license. The Office Update Installation Engine ActiveX control hooks into this ActiveX control, affecting:

  • Office Update
Cabinet File: OGAControl.cab
Static URL: http://go.microsoft.com/.../OGAControl.cab
Windows Update: None
Script: InstOGAV.inf
Shortcut: None

Files:							  Destination Folder
---------------------------------------------------------------------------
OGACheckControl.dll				 %WinDir%\System32
OGAControl.inf					  %WinDir%\Downloaded Program Files
Some versions of Microsoft Office install another ActiveX control, named Authzax.dll. The Office Update web site will attempt to invoke Authzax.dll, which in Internet Explorer 7 or later results in prompting the user to authorize the ActiveX control. As of MSDBuild v5.0, InstOGAV.inf now adds an HKCU registry setting which suppresses Internet Explorer from prompting the user to authorize and run Authzax.dll.

Office Update Installation Engine (ActiveX)

This ActiveX control permits you to download updates and add-ons from:

  • Office Update
Cabinet File: opuc4.cab
Static URL: http://office.microsoft.com/.../opuc4.cab
Windows Update: None
Script: InstOUIE.inf
Shortcut: Adds Microsoft Office Update

Files:							  Destination Folder
---------------------------------------------------------------------------
Office.ico *						%WinDir%
OPUC.dll							%WinDir%
OPUC.inf							%WinDir%\Downloaded Program Files
NOTE: Office.ico is not part of the ActiveX control downloaded from Microsoft. It is used as the icon for the Start Menu Shortcut.

DataStore.edb

DataStore.edb is not actually part of any ActiveX control downloaded from Microsoft. Rather, this is a Windows database file that stores all of the Windows and Microsoft updates you have: hidden, downloaded, or installed; and, it also stores if you are using Windows Update or Microsoft Update. When we install the Microsoft Update Web Control Class ActiveX control, we must also install a copy of DataStore.edb that has been pre-configured for use with Microsoft Update. During installation, InstMUWC.inf will attempt to copy DataStore.edb to %WinDir%\SoftwareDistribution\DataStore, and will error out if DataStore.edb is not found. Therefore, MSDBuild automatically includes a copy named DataStore.ed_, which is used if you do not provide your own customized copy of DataStore.edb. DataStore.ed_ is configured to use Microsoft Update and hides the update for Windows Messenger v4.7 (now superseded by a more recent version of Windows Messenger).
We use DataStore.edb to help accomplish two things:

  • Ensure the Windows XP installation uses Microsoft Update from the start.
  • Hide any updates we wish to exclude from Windows/Microsoft Update.
  • On your engineering PC, slipstream or integrate all the updates you wish to include into your XPCD.
  • Install this XPCD onto a clean VirtualPC or TestPC.
  • In the clean Windows XP installation, run Windows Update.
  • From the Windows Update web site, manually install Microsoft Update, as well as any of the requisite ActiveX Controls or Windows Updates that you are explicitly prompted to install (reboot only if forced to).
  • Progress through Microsoft Update to the scan screen (Express/Custom)
  • Perform a Custom system scan.
  • Hide any update that you wish to exclude from Windows or Microsoft Update (Say for example Windows Messenger v4.7).
  • Close Internet Explorer.
  • Right-click on My Computer and select Manage from the context menu.
  • In Computer Management, open Services and Application - Services.
  • Right-click on the Automatic Updates Service and select Stop. (This ensures the file is no longer locked so it can be copied.)
  • Open Windows Explorer to %WinDir%\SoftwareDistribution\DataStore.
  • Copy DataStore.edb to your MSDownloads folder on your engineering PC.
NOTE: If you want the smallest file possible (which hides nothing), skip steps 6 and 7 from the process above.
NOTE: Don't play around in Windows Update too much, or DataStore.edb will grow larger. The smaller it is, the smaller your installer will be.

MSDBuild.exe (Microsoft Downloads Installer Builder)

MSDBuild.exe (MSDownloads.exe ActiveX Installer Builder) is a WinRar SFX I developed containing a collection of scripts (.cmd, .inf, and .vbs) that automates creating an ActiveX control installer named MSDownloads.exe (discussed in-detail earlier), from the requisite components downloaded from Microsoft. MSDBuild.exe will do the following:

  • Unpack the following files to the MSDownloads download folder:
    • MSDBuild.cmd – MSDownloads.exe Builder Script
    • Readme.txt – This content you are reading now in printable format.
  • Unpack all the 7-Zip command line files to MSDownloads\7za465.
    • 7za.exe
    • 7-Zip.chm
    • 7-Zip Command Line License.txt
    • 7-Zip Command Line ReadMe.txt
    • 7-Zip Extra History.txt
    • 7-Zip Extra License.txt
    • 7-Zip Extra ReadMe.txt
    • 7-Zip For Installers ReadMe.txt
    • 7zS.sfx
    • Copying.txt
      NOTE: MSDBuild.cmd writes temporary VBScript (.vbs) files here.
  • Unpack all MSDownloads.exe installation files to MSDownloads\WorkMSDB.
    • DataStore.ed_ – DataStore.edb (used if you do not provide your own).
    • hidec.exe – Tiny executable that hides the Windows Command Prompt.
    • InstMCWC.in_ – * Installs Microsoft Catalog Web Control
    • InstMUWC.in_ – * Installs Microsoft Update Web Control
    • InstOGAV.in_ – * Installs Office Genuine Advantage Validation Tool
    • InstOUIE.in_ – * Installs Office Update Installation Engine
    • InstWGAV.in_ – * Installs Windows Genuine Advantage Validation Tool
    • InstWUWC.in_ – * Installs Windows Update Web Control
    • Office.ico – Microsoft Office Icon file
    • SFX-MSD.cmd – Launches Inst*.inf installations in MSDownloads.exe.
    • SFX-MSD.ini – Governs a few installer parameters.
      NOTE: The Inst*.in_ files will not work correctly as Setup Information (.inf) files. (Read the Methodology section for more details.)
  • Check the MSDownloads download folder for SFX-MSD.ini (your file); if one is found, copy it to the WorkMSDB subfolder.
  • Check the MSDownloads download folder for DataStore.edb (your file); if one is found, copy it to the WorkMSDB subfolder.
  • Extract all downloaded Microsoft .cab files to MSDownloads\WorkMSDB.
    NOTE: The ActiveX Control sections list which files each .cab contains.
  • For Windows Genuine Advantage Notifications - KB905474:
    • Extract payload from download (either WgaNotifyPackageStandalone.exe or wganotifypackageinner.exe).
    • Delete download (WindowsXP-KB905474-<LANG>-x86.exe).
    • Rename the payload the same as the download.
      NOTE: Read the Windows Genuine Advantage Notifications section.
  • For each ActiveX control's .dll file:
    • Extract any related Windows update containing the ActiveX control's .dll to a temporary subfolder named after the Windows update.
      Currently, this step only applies only to:
      • LegitCheckControl.dll (WGA Notifications)
      • wuweb.dll (Windows Update Agent)
    • Compares the .dll file versions (A or B, not both).
      • Only when executed on Windows XP: Compare the versions of the .dll files in: the cabinet file, the related Windows Update, and either the %WinDir%\System32 or %WinDir%\System32 folder as appropriate for the .dll.
      • Only when not executed on Windows XP: Compare the versions of the .dll files in: the cabinet file or the related Windows Update.
    • Copy the most recent version of the .dll to MSDownloads\WorkMSDB.
    • Append date and version information of the copied .dll file to the related Inst*.in_ file, which creates the related Inst*.inf file.
      NOTE: Inst*.inf files are not in a working state at this point, since SFX-MSD.cmd must append system paths to them (see Issue 01).
    • Modify the Microsoft .inf file that came with the cabinet .dll file to include the correct version information of the retained .dll file.
    • Delete the temporary subfolder of any extracted Windows update.
  • Create MSDownloads.exe in the MSDownloads download folder.
  • Prompt to delete from the MSDownloads download folder:
    • 7za465 subfolder
    • WorkMSDB subfolder
    • MSDBuild.cmd
    • Readme.txt
  • Open the MSDBuild.log file in Notepad.

Issue Log

There are a couple issues to be aware of. MSDBuild resolves one of them.

Issue 01. ModuleUsage subkeys Hard-Coded to C:/Windows/System32

Proper registration for .dlls requires registry subkeys under this key:

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\ModuleUsage\_
So we should end up with subkeys like these:

_C:/WINDOWS/OPUC.DLL]
_C:/WINDOWS/system32/LegitCheckControl.DLL]
_C:/WINDOWS/system32/wuweb.dll]
_C:/WINDOWS/system32/muweb.dll]
_C:/WINDOWS/system32/OGACheckControl.DLL]
NOTE: The "_" above is a line continuation and only shows where and how each subkey connects to the parent key.

The issue is that the subkeys above all require slashes "/", and cannot use backslashes "\" (Registry key names can never use backslashes). So when the .inf files create these subkeys, they must be hard-coded, since all DirIDs use backslashes, and there is no programmatic way (inside the .inf file) to create this value based on paths on the system. (Using the System Drive DirID results in creating an intermediate registry key).

IMPACT:

This issue will impact you, if you:
  • Changed your System Drive letter to something other than "C:"
  • Renamed your Windows folder to something other than "Windows"
  • Renamed your System32 subfolder to something other than "System32".
THIS ISSUE WAS RESOLVED AS OF MSDBUILD v1.5:

I modified SFX-MSD.cmd to address this issue. SFX-MSD.cmd appends a string assignment to the bottom of each Setup Information (Inst*.inf) file, which defines System32Key (or WinDirKey) equal to the front-slashed-path of the System32 (or Windows) folder. This can only be done during installation, since these paths may vary from system to system.

IMPORTANT: All Inst*.inf files are broken, until SFX-MSD.cmd appends to them, which takes place during MSDownloads.exe installation!

Issue 02. Languages Other Than English

IMPACT:

This issue impacts you if you use a language other than English.

WORKAROUND:

  • Find the language-specific download URLs for your language.

    Unfortunately, my Windows Updates Downloader update list (MSDownloads.ulz) only handles English language downloads for some requisite components (but most of them are not language-specific). So start by downloading everything with WUD. Then you will only need download a few files manually. (You can also edit your own WUD update list, which is not very difficult.)

    You could try changing the "/en/" language abbreviation in the Code Base URLs for the cabinet (.cab) file of each ActiveX control listed below to your language abbreviation. You may find your language abbreviation inside the Windows Update Agent download (see that section for details). Or, you can copy the URLs from a Windows XP PC already installed in your language, with the ActiveX Controls manually installed by doing this:
    • List the %WinDir%\Downloaded Program Files folder in Windows Explorer.
    • Right-click on the ActiveX Control, and select Properties.
    • From the General tab, copy the Code Base url.
      You can start from either end and select-drag your mouse (or hold down the shift key and use the cursor keys) to select all the way to the other end. The very long URLs will scroll so you can copy them.
    NOTE: MSDBuild should have no trouble extracting the .cab files for these three ActiveX controls, so long as they use the same file names as the English versions.

    You must also find the Windows Genuine Advantage Notifications - KB905474 download URL, which is language-specific. See the KB905474 article.

    NOTE: MSDBuild should have no trouble extracting the KB905474 payload and the .dll inside it, regardless of its file name. That is, so long as you use the original file name as downloaded from Microsoft.

    NOTE: I believe all other downloads are language-neutral. However, I have only researched and tested English language installations.

  • Find the Office Update URL for your language.

    As noted below, the Office Update web site URL is also language-specific. You need not worry about the Microsoft Update web site, which is actually launched by a function call to muweb.dll and not by a URL. You also need not worry about Windows Update, whose shortcut is installed with Windows XP (and removed when you install Microsoft Update).

  • Edit SFX-MSD.ini to customize for you language.

    The three Code Base URLs listed below are used as registry settings inside the Setup Information (Inst*.inf) scripts I created for the related ActiveX controls. And the Office Update web site URL is used as a shortcut inside the Setup Information script for its related ActiveX control. Once you find the correct URLs for your language, edit the listed values inside of SFX-MSD.ini to ensure your installer correctly supports your language.

    ActiveX Control							  SFX-MSD.ini	   Default URL#
    ---------------------------------------------------------------------------
    Windows Update Web Control Class			 WUWC_CAB		  1
    Microsoft Update Web Control Class		   MUWC_CAB		  2
    Microsoft Update Catalog Web Control Class   MCWC_CAB		  3
    Office Update Installation Engine (Site)	 OUIE_URL		  4 *
    Default URLs (Language = English-United States):
    ---------------------------------------------------------------------------
    1 http://update.microsoft.com/windowsupdate/v6/V5Controls/en/x86/client/wuweb_site.cab
    2 http://update.microsoft.com/microsoftupdate/v6/V5Controls/en/x86/client/muweb_site.cab
    3 http://catalog.update.microsoft.com/v7/site/ClientControl/en/x86/MuCatalogWebControl.cab
    4 http://office.microsoft.com/en-us/downloads/maincatalog.aspx
    The Setup Information scripts for three of the ActiveX controls listed above also create shortcuts in the Start Menu. By default, they all use English names and infotips. Edit the Shortcut and InfoTip values inside SFX-MSD.ini to ensure your installer correctly supports your language.

    Default (English-US) Shortcut Name	Shortcut value		  InfoTip value
    ---------------------------------------------------------------------------
    Microsoft Update					  MUWC_Shortcut		   MUWC_InfoTip
    Microsoft Update Catalog			  MCWC_Shortcut		   MCWC_InfoTip
    Office Update						 OUIE_Shortcut		   OUIE_InfoTip
  • Test, Test, Test.

    I believe everything else should work for you. But test carefully (ideally inside VirtualPC), since I have only researched and tested English language installations. Please report any errors, and I'll try to ensure my scripts can handle other languages.

  • Share.

    Once you have tested your language successfully, post the download and site URLs to the discussion thread. Also, try taking a stab at translating the MSDownlads.ulz into your language. (Files ending with .ulz are just .zip files, and the .ul file inside is just a plain text XML file.)
This is the best advice I can offer to break the language barrier.

Version History
  • v5.5 - 2009-05-28 Current Version
    • Updated the InstWGAV.inf Setup Information script to set registry entires that accept the WGAN EULA and set some other registry values. Otherwise, Microsoft Update still listed KB905474 after the inner package was integrated and installed.
  • v5.4 - 2009-05-22
    • Updated all Setup Information (.inf) scripts to pre-authorize the microsoft.com domain for use with IE8.
  • v5.3 - 2009-03-27
    • Updated Windows Genuine Advantage Notifications to v1.9.0040.0.
    • Updated :WGAN subroutine in MSDBuild.cmd to handle new packaging.
    • Updated WGAN sections in: Guide, Readme.txt, and MSDownloads.ulz.
    • Añadido una lista para Descargarador de Actualizaciónes de Windows (WUD), se llama: MSDownloadsESN.ulz (Gracias a hipo_loco).
  • v5.2 - 2009-03-24
    • Fixed a reported issue where MSDBuild.cmd and SFX-MSD.cmd would check the Windows version by searching for strings like: "Version 5.1", "Version 6.0", etc. Apparently, Microsoft changes the word "Version" in some language variants of Windows, which is "Versi¢n 5.1" in Spanish Windows XP. Both Scripts now search for: " 5.1", " 6.0", etc. (note the preceding space). Hopefully, this preempts any possible issues with other non-English-language variant of Windows.
    • Updated MSDBuild.cmd to open .log file with focus, even on Vista+.
    • MSDBuild now uses 7-Zip v4.65.
    • Other minor script, guide, and Readme.txt changes.
  • v5.1 - 2009-02-20
    • Fixed a reported bug where MSDBuild no longer supported a download folder path containing spaces in name. The following characters are still not supported in folder names: "<, >, (, ), %, ^, |, *, \, !".
    • MSDBuild.cmd now checks if KB905474 WGAN file in the download folder requires extraction or not (no more WGANotify Setup dialogs).
    • Other minor script, guide, and Readme.txt changes.
  • v5.0 - 2009-02-16
    • Major guide rewrite, worth re-reading (hopefully it is more clear).
    • Added MSDownloads.exe installer customization through SFX-MSD.ini, a new file whose supported settings are documented internally. Both MSDBuild.cmd and SFX-MSD.cmd now read settings from SFX-MSD.ini.
    • MSDBuild.cmd now uses the most recent .dll for each ActiveX control from: the cabinet file; the Windows update, or the System32 folder. Read the ActiveX Control Technical Reference for details.
    • Updated InstOGAV.inf to suppress authorization of Authzax.dll. Read the Office Genuine Advantage Validation Tool section for details.
    • MSDBuild.exe no longer includes complete Setup Information files (Inst*.inf). Read the Methodology section for details.
    • MSDBuild.exe now extracts DataStore.ed_ to the WorkMSDB subfolder.
    • Fixed a reported bug where SFX-MSD.cmd actually launched the .inf to install Microsoft Update Web Control in place of the one to install Microsoft Update Catalog Web Control (and vice versa). (This bug was always negated if your installer included both controls.)
    • Various other minor bug fixes and improvements to all scripts.
  • v4.5 - 2008-11-26
    • Updated Windows Update Agent to v7.2.6001.788.
    • Added static download URLs for Windows Update Agent.
    • Removed extract.exe. MSDBuild now unpacks .cab files with 7-Zip.
    • Re-wrote Cleanup subroutine.
    • LegitCheckControl.dll: MSDBuild will now use the most recent version from LegitCheckControl.cab or WGA Notifications.
      Replaced InstWGAV.inf with InstWGAV.in_ inside MSDBuild.exe.
      MSDBuild.cmd now creates InstWGAV.inf by adding the correct module version and date stamp to InstWGAV.in_. MSDBuild.cmd updates LegitCheckControl.inf with correct version.
    • wuweb.dll: MSDBuild.cmd will now use the most recent version from either wuweb_site.cab or Window Update Agent.
      Replaced InstWUWC.inf with InstWUWC.in_ inside MSDBuild.exe. MSDBuild.cmd now creates InstWUWC.inf by adding the correct module version and date stamp to InstWUWC.in_. MSDBuild.cmd updates wuweb.inf with correct version.
      NOTE: Module dates and times do not factor in DST yet.
      NOTE: You still download wuweb_site.cab and LegitCheckControl.cab!
  • v4.1 - 2008-09-25
    • Updated InstOUIE.inf (Office Update Installation Engine) to v12.0.5580.1000 (Tue, 26 Aug 2008 05:04:10 GMT).
    • Updated Windows Genuine Advantage Notifications to v1.8.0031.9.
    • Re-organized Guide to better highlight automated section and manual process. (Some readers were confused with automated process first.)
    • MSDBuild.exe now extracts Readme.txt to download folder instead of the WORK subfolder. (However, it is still deleted with WORK files.)
  • v4.0 - 2008-08-31
    • Updated Windows Update Agent section of the guide (again). I just noticed that the newest version of the download from Microsoft will
      actually accept silent installation switches. (That is, the outer shrinkwrap executable passes all command parameters to WUSetup.exe.)
    • Updated Windows Genuine Advantage Notifications to v1.8.0031.0.
    • Updated Windows Genuine Advantage Notifications section of the guide.
    • Updated MSDBuild.cmd to extract payload from the Microsoft download for KB905474 Windows Genuine Advantage Notifications (which is an IExpress package). MSDBuild.cmd extracts the payload, deletes the downloaded file, and renames the payload the same as the download. The extracted package can be then be integrated using /INTEGRATE.
    • Updated MSDBuild.exe to include 7-Zip command line version.
    • Updated MSDBuild.cmd to use 7-Zip command line version instead of WinRar. (Installing WinRar is no longer required.)
  • v3.2 - 2008-08-29
    • Updated Windows Update Agent to v7.2.6001.784.
    • Updated Windows Update Agent section of the guide.
    • Updated InstMUWC.inf (Microsoft Update Web Control Class) to v7.2.6001.784 (Sat, 19 Jul 2008 09:55:57 GMT).
    • Updated InstWUWC.inf (Windows Update Web Control Class) to v7.2.6001.784 (Sat, 19 Jul 2008 09:52:07 GMT).
    • Updated InstOUIE.inf (Office Update Installation Engine) to v12.0.5575.1000 (Tue, 22 Jul 2008 06:59:52 GMT).
  • v3.1 - 2008-07-19
    • Updated all Inst*.inf files to suppress per-user authorization of ActiveX controls in IE7. A big thanks to ricktendo64 for this!
    • InstMUWC.inf (Microsoft Update Web Control) now removes the Windows Update Start Menu shortcut. (After switching to Microsoft Update,
      the Windows Update shortcut points to Microsoft Update anyway.)
  • v3.0 - 2008-07-18
    • Updated LegitCheckControl.cab (KB892130) to v1.7.69.2.
    • InstWGAV.inf properly registers LegitCheckControl.dll without requiring Windows Genuine Advantage Notifications - KB905474.
    • Updated OGAControl.cab to v1.6.28.0.
    • Updated opuc4.cab to v12.0.5561.1000.
    • Replaced Windows Installer 3.1 v2 (3.1.4000.2435) - KB893803 with: Windows Installer 4.5 v3 (4.5.6001.22159) – KB942288
    • Created MSDownloads.ulz Windows Updates Downloader file to help download all required files.
    • Created MSDBuild.exe and MSDBuild.cmd script to automate creation of MSDownloads.exe.
  • v2.5 - 2008-01-17
    • Added KB898461 as a required Windows Update.
      NOTE: Readme.txt in download was not updated for this version.
  • v2.2 - 2007-12-21
    • More Readme.txt revisions (clearer svcpack.inf examples).
    • Fixed missing hidec.exe noted in v2.1 attachment.
  • v2.1 - 2007-12-15 - Minor grammar and spelling corrections in Readme.txt.
  • v2.0 - 2007-12-15 - First version published on MSFN.org.
  • v1.5 - 2007-12-01 - SFX-MSD.cmd now appends System32 Key strings to Inst*.inf files on-the-fly during installation (Issue 01 Resolved).
  • v1.0 - 2007-11-25 - Inst*.inf files require manual editing of System32 Key strings (Issue 01 Identified).
IMPORTANT: Please stop reading now! Everything you need is fully contained in this first post, which I keep up-to-date with each new version. Post any issues or questions to the end of this thread. When posting issues, please include MSDBuild.log as a file attachment.

Edited by DarkShadows, 28 May 2009 - 09:08 PM.

I'm still looking for that damned <Any> key!
Check Out My: Sysinternals Installer Builder | GUIDE: Download Everything Microsoft


How to remove advertisement from MSFN

#2
ricktendo

ricktendo

    Group: Banned Members

  • Member
  • PipPipPipPipPipPipPipPip
  • 2,309 posts
  • Joined 06-June 06
  • OS:Windows 7 x64
  • Country: Country Flag
Hey thanks, gonna have a good look at this.

BTW including some of the cat files may be a good idea also

#3
DarkShadows

DarkShadows

    The brighter the light, the darker the shadows.

  • Member
  • PipPip
  • 272 posts
  • Joined 12-January 05
Anything that integrates as a Type I hotfix (with the /INTEGRATE switch) will automatically include it's .cat file in the SVCPACK folder and svcpack.inf file. I researched the manual installation of all ActiveX controls on a Virtual PC (i.e. install Windows and then let IE download each ActiveX control). As far as I could tell, those .cat files never show up anywhere after the ActiveX control is installed. It's as if they are not even used. In fact, only two of the ActiveX Control .cab files even contain .cat files. So I really have no idea where they are supposed to go. Perhaps they are just referenced from the cab when the other files are installed? This is why I recommend copying them to your WORK folder and including them in your SFX. But if anyone has any ideas on where they should be copied, then I can edit my Inst*.inf files accordingly.

BTW, I've done some pretty exhaustive testing on the process above and built a few PCs with it by now, including:
  • Windows XP Home OEM
  • Windows XP Home Retail Upgrade
  • Windows XP Pro Volume
  • Windows XP Pro OEM
All have worked for me without issue. Although, from time-to-time we need to re-download some things, because Microsoft will constantly update them.
I'm still looking for that damned <Any> key!
Check Out My: Sysinternals Installer Builder | GUIDE: Download Everything Microsoft

#4
Mann

Mann

    Junior

  • Member
  • Pip
  • 95 posts
  • Joined 02-October 03
Great guide.Thank you very much. :thumbup

#5
neo

neo

    Microsoft MVP - Windows Expert Consumer

  • Member
  • PipPipPipPipPipPip
  • 1,251 posts
  • Joined 31-March 06
  • OS:Windows 7 x64
  • Country: Country Flag
g8! should be pinned

#6
Lucius Snow

Lucius Snow

    Member

  • Member
  • PipPip
  • 247 posts
  • Joined 17-August 04
Awesome, thanks a lot !

#7
swampy

swampy

    Junior

  • Member
  • Pip
  • 92 posts
  • Joined 26-January 04
hidec.exe is missing in the download.

#8
DarkShadows

DarkShadows

    The brighter the light, the darker the shadows.

  • Member
  • PipPip
  • 272 posts
  • Joined 12-January 05

hidec.exe is missing in the download.

Ah, so it is; I'm sorry about that folks! Thanks for pointing this out! I quietly updated the ReadMe.txt file inside MSDownloads.zip very shortly after my first post. And, I simply forgot to select hidec.exe when I made the new MSDownloads.zip! :blushing: Over 65 people downloaded the version missing hidec.exe and only one person pointed it out!

The first post has now been updated with clearer svcpack.inf examples, and a new copy of MSDownloads.zip that includes hidec.exe.
I'm still looking for that damned <Any> key!
Check Out My: Sysinternals Installer Builder | GUIDE: Download Everything Microsoft

#9
tap52384

tap52384

    nLite Lover

  • Member
  • PipPipPip
  • 331 posts
  • Joined 11-August 04
Is it possible to have a single addon that contains all of these items and be easily updated simply by replacing the files inside a .rar addon?

#10
swampy

swampy

    Junior

  • Member
  • Pip
  • 92 posts
  • Joined 26-January 04
thanks very much

#11
DarkShadows

DarkShadows

    The brighter the light, the darker the shadows.

  • Member
  • PipPip
  • 272 posts
  • Joined 12-January 05

Is it possible to have a single addon that contains all of these items and be easily updated simply by replacing the files inside a .rar addon?

Unless I have misunderstood your question, I do not believe it is worth the effort required to make one huge WinRar SFX. Now let me explain why I say that. If you follow my guide exactly as written, you end up with four products:
  • KB893803.exe
  • KB905474.exe (WGANOT~1.exe)
  • WindowsUpdateAgent.exe (a WinRar SFX)
  • MSDownloads.exe (a WinRar SFX)
It really makes no sense to do more work on the first two products. More-less, they are just like any other Windows Update. The downloaded KB905474.exe file must be first be extracted to get at the WGANOT~1.exe, but afterward it can easily be integrated just like any other Windows Update (I rename WGANOT~1.exe back to KB905474.exe). More than likely, most people will already have some process by which they already integrate Windows Updates into an XPCD (nLite, XPCREATE, HFSLIP, your own script, etc.). So just plug these two files into that process. It makes little sense to rip these two products apart further just to try to add them to one huge WinRar SFX. I list these two items in this guide, simply because the other products require them in order to work.

You might be able to combine WindowsUpdateAgent.exe (a WinRar SFX) with MSDownloads.exe (a WinRar SFX). What troubles me with this idea is that both Windows Update Agent and WUWebControl Class (Windows Update Web ActiveX Control) include wuweb.dll. Right now, these two files have the same version, but each has a different time stamp and MD5 Checksum. And as time goes on, Microsoft is very likely to update the copy of wuweb.dll downloaded with the ActiveX control .cab file, but they might not update the Windows Update Agent download at all. Or, Microsoft may even release a whole new version of Windows Update Agent. I'm also not so sure that WUSetup.exe won't choke on an updated wuweb.dll file in the future. So again it is more work, and more risk, for very little value added.

I will not update the guide above, as I see little value added, and more risk. But , for those die hards still interested combining the two, follow the Guide above as written, except as amended below.

Integrate Windows Update Agent
  • Complete steps 1 - 6 exactly as typed above and skip the remaining steps.
  • Copy the remaining files of the extracted Windows Update Agent to your WORK folder.
  • Download, extract, and copy the updated version SFX.cmd below to your WORK folder (overwriting the current one). The updated version executes the command below, just before installing my Inst*.inf files.
    Start /Wait "Windows Update Agent" WUSetup.exe /wuforce /quiet /norestart

    Attached File  SingleSFX.zip   959bytes   113 downloadsMD5: 80a72e6cde53014f987aacc12a5706eb
Integrate WUWebControl Class (Windows Update Web ActiveX Control)

During Step 2, you will be extracting and copying wuweb.dll into your WORK folder, let it overwrite the one you already copied there for Windows Update Agent.

NOTE: I have not tested this amended process. But I believe it will work, so long as WUSetup.exe has no issues with a different version (or MD5 Checksum) of wuweb.dll.

Edited by DarkShadows, 21 December 2007 - 11:20 AM.

I'm still looking for that damned <Any> key!
Check Out My: Sysinternals Installer Builder | GUIDE: Download Everything Microsoft

#12
spitf1r3

spitf1r3

    Newbie

  • Member
  • 45 posts
  • Joined 25-December 07
Here's the nLite addon version 1.0 from 02.01.2008 with MSdownloads (to install at T-13 from SVCPACK.INF)

Edited by spitf1r3, 02 January 2008 - 03:46 PM.


#13
DarkShadows

DarkShadows

    The brighter the light, the darker the shadows.

  • Member
  • PipPip
  • 272 posts
  • Joined 12-January 05
@ spitf1r3
I appreciate your enthusiasm. However, there are really good reasons why I didn't just publish a completed file, and instead chose to publish the process to get the complete file. First and foremost, I imagine some people will take this information and adapt it to their own process. For example, I do not use nLite, or any other all-encompassing slipstreaming tool. (I wrote my own Integrate.cmd script, which I use to create my Windows XPCDs with.) Secondly, all of the ActiveX controls will get updated from time-to-time. Each is updated somewhere around once every 3 to 9 months, depending on the ActiveX control. In fact, during my first draft of the process, Microsoft updated one of the ActiveX controls, so I had to go back and make changes to my guide before it was ever even posted.

But now that you stuck that file up here, I expect that you will come back later, when Microsoft updates one of the components, and provide another updated download! Otherwise, your download will only be good for about 3 months or so; because, at least one of those .cab files I listed above is bound to change each quarter! :whistle:


EDIT 1:

Also, your addon cannot anticipate what things other users will want to hide from DataStore.edb.

EDIT 2:

Another thing, in your attached nLite addon, you have hard-coded the Front-slashed path variables (System32Key and WinDirKey) discussed in Issue-01 inside of each Inst*.inf file. So if someone using your addon has also changed their %SystemDrive% letter (or their Windows folder name) to something other than C: (or something other than Windows), then the .dlls and add ons will not be correctly registered.

Edited by DarkShadows, 07 January 2008 - 07:35 PM.

I'm still looking for that damned <Any> key!
Check Out My: Sysinternals Installer Builder | GUIDE: Download Everything Microsoft

#14
spitf1r3

spitf1r3

    Newbie

  • Member
  • 45 posts
  • Joined 25-December 07
That's what I intend to do: update this as regular as possible.
I'll add a date and version to my previous post.

Also, your addon cannot anticipate what things other users will want to hide from DataStore.edb.


If someone wanto get it easy, he won't mess with building it, he can just try my nLite addon:)

Besides, I really understand your point of view.

=====Edit=====

Another thing, in your attached nLite addon, you have hard-coded the Front-slashed path variables (System32Key and WinDirKey) discussed in Issue-01 inside of each Inst*.inf file. So if someone using your addon has also changed their %SystemDrive% letter (or their Windows folder name) to something other than C: (or something other than Windows), then the .dlls and add ons will not be correctly registered.


Is there no way to add variables?

Edited by spitf1r3, 02 January 2008 - 03:44 PM.


#15
DarkShadows

DarkShadows

    The brighter the light, the darker the shadows.

  • Member
  • PipPip
  • 272 posts
  • Joined 12-January 05
I discussed this at length in my first post (under Issue 01). It is not possible to use .inf file variables to handle the registry settings with front-slashed paths. All .inf file DirID variables use backslashes, not front slashes. there was no way inside of an .inf file to get around this. This is why I updated SFX.cmd to programmatically determine the correct path to %WinDir% and System32, which it then writes (in front-slashed format) to each Inst*.inf file at installation time. SFX.cmd looks at your system, when you build it, and finds the correct system drive letter and Windows folder name. SFX.cmd then writes the correct information to the end of each Inst*.inf file, setting their variables correctly, before SFX.cmd installs the .inf file.

Also, I do not know why you needed to repackage things. MSDownloads.exe (if built how I documented above) already runs from svcpack.inf without any switches. It seems like a lot of work to repackage something that I have already showed you how to package.

Edited by DarkShadows, 03 January 2008 - 06:41 PM.

I'm still looking for that damned <Any> key!
Check Out My: Sysinternals Installer Builder | GUIDE: Download Everything Microsoft

#16
spitf1r3

spitf1r3

    Newbie

  • Member
  • 45 posts
  • Joined 25-December 07

Also, I do not know why you needed to repackage things. MSDownloads.exe (if built how I documented above) already runs from svcpack.inf without any switches. It seems like a lot of work to repackage something that I have already showed you how to package.

No, it wasn't much work at all.
I've built it with nLite add-on maker...

Edited by spitf1r3, 02 January 2008 - 05:41 PM.


#17
legionaire

legionaire

    Newbie

  • Member
  • 43 posts
  • Joined 16-May 06
Thank you for this truly outstanding guide, DarkShadows! I never figured all these ActiveX controls could be installed without the excessive clickwork that is normally required. :thumbup

Just a little info on the side: People who'd rather use command lines for their unattended setup process might find the following command to be of interest:
rundll32 syssetup,SetupInfObjectInstallAction DefaultInstall 128 .\???.inf

Edited by legionaire, 07 January 2008 - 04:50 PM.


#18
James_A

James_A

     

  • Member
  • PipPip
  • 153 posts
  • Joined 23-December 07

g8! should be pinned


I agree...

#19
ifanatic

ifanatic
  • Member
  • 4 posts
  • Joined 09-January 08
This guide is simply great and perfectly fits my requirements.

However being a noob here, I am kind of stuck with the SFX file creation thing.
I create the SFX file in the following way.

Posted Image

Posted Image

Posted Image

Posted Image

Posted Image

Posted Image


When I double click this SFX file nothing happens.
Can someone help me with this step.

Thanks

#20
ifanatic

ifanatic
  • Member
  • 4 posts
  • Joined 09-January 08
Update 1:

OK! by adding the following settings to the above SFX file, I made this thing working.
However it is NOT FULLY automated.

Under Advanced SFX Options I mention a "path where to extract the files"

c:\MSUpdates.


During Windows XP setup, it asks me to click on NEXT so that it can extract the required files.
Could some one please point what additional settings need to be made to fully automate this process.

Thanks in advance.

#21
DarkShadows

DarkShadows

    The brighter the light, the darker the shadows.

  • Member
  • PipPip
  • 272 posts
  • Joined 12-January 05
I didn't want to answer these types of questions, but here you go. If you are using WinRar to create your MSDownloads.exe, do this:
  • Open WinRar.txt
  • Select my working comment and copy it to the Windows clipboard.
  • Close WinRar.txt
  • Select all the files in your WORK folder (all those on the checklist in my guide above).
  • Right-click and select WinRar - Add to Archive... from the Windows Explorer Context Menu. Fill out each tab from Right-To-Left
  • On the Comment tab, paste the comment you copied from my file.
  • On the Time tab, ensure the following options are set:
    • High precision modification time
    • Store Creation Time = enabled
    • Include files = Of any time
    • Set Archive Time = Latest File Time
  • Ensure nothing is enabled on the Backup tab.
  • On the Files tab, ensure the following options are set:
    • File paths = Store Relative Paths
  • On the Advanced tab, ensure the following options are enabled:
    • No options on the tab itself
    • Click the Compression button and set the following options on that screen
      • Text compression = auto
      • Prediction order = 63
      • Memory to use = 128
      • Audio compression = auto
      • Channels = 0
      • True color compression = auto
      • General compression - Dictionary Size = 4096
      • Enable all three compression types
    • SFX Options button—pasting my comment already set these SFX Options correctly for you. You can take a look at them so you know where they go, but do not change anything.
  • On the General tab, ensure the following options are enabled:
    • Archive name = MSDownloads.exe
    • Update Mode = Add and replace files
    • Archive format = RAR
    • Compression Method = Best
    • Create SFX archive
    • Create solid archive
    • Test archived files
  • Since these options will work well for any SFX silent switchless installer, save them for later use
    • Click the Profiles... button.
    • Select save current settings to new profile
    • Profile Name = SFX Silent package (disable all other options)
  • Click OK to create MSDownloads.exe.

If you had previously created the SFX Silent Package profile, you could've just done this:
  • Open WinRar.txt
  • Select my working comment and copy it to the Windows clipboard.
  • Close WinRar.txt
  • Select all the files in your WORK folder (all those on the checklist in my guide above).
  • Right-click and select WinRar - Add to Archive... from the Windows Explorer Context Menu.
  • Click the Profiles... button.
  • Select the SFX Silent Package profile.
  • On the Comment tab, paste the comment you copied from my file.
  • Click OK to create MSDownloads.exe.

By creating an SFX with my comment (and the settings above), you will get the smallest SFX archive file size, and the SFX will unpack to a temporary folder inside of %Temp%, launch SFX.cmd (the installation payload), and finally delete the unpacked temporary files after installation.

Edited by DarkShadows, 17 January 2008 - 11:49 AM.

I'm still looking for that damned <Any> key!
Check Out My: Sysinternals Installer Builder | GUIDE: Download Everything Microsoft

#22
DarkShadows

DarkShadows

    The brighter the light, the darker the shadows.

  • Member
  • PipPip
  • 272 posts
  • Joined 12-January 05
I have learned that there is another Windows Update that is a requirement. I have updated the first post accordingly (MSDownloads.zip has not changed). This is of minor impact to most, as you should already be including the required Windows Update in your XPCDs anyway. See the first post for more information.
I'm still looking for that damned <Any> key!
Check Out My: Sysinternals Installer Builder | GUIDE: Download Everything Microsoft

#23
DarkShadows

DarkShadows

    The brighter the light, the darker the shadows.

  • Member
  • PipPip
  • 272 posts
  • Joined 12-January 05

Hi,
I am not getting the shortcut to windows update on my start menu. I had a look at the InstWUWC.inf file and found that there was no entry for add.shortcut. I would have corrected it myself but i don't know how to enter the path to the icon in shell 32.dll

InstWUWC.inf does not actually add a Windows Update shortcut, which should already be in the Start Menu as a result of a default Windows XP installation. If you are installing InstMUWC.inf (which creates a Microsoft Update shortcut), then you no longer require the Windows Update shortcut anyway. This is because either shortcut will both end up taking you to the Microsoft Update web site anyway (this is result of registering the MUWeb ActiveX addon).

Still to answer your queston, InstMCWC.inf has the answer to the path for shell32.dll.

[Add.Shortcut]
;Add shortcut directly to Start Menu
Name = "%Shortcut%", 8,22
CmdLine = 16422,"Internet Explorer",IEXPLORE.EXE "http://catalog.update.microsoft.com/v7/site/home.aspx"
InfoTip = "%InfoTip%"
IconPath = 11,,shell32.dll
IconIndex = 13

You would just change the IconIndex value to the correct index of the Windows Update Icon. And change the URL above to the correct one for Windows Update.
I'm still looking for that damned <Any> key!
Check Out My: Sysinternals Installer Builder | GUIDE: Download Everything Microsoft

#24
Whiestler

Whiestler
  • Member
  • 5 posts
  • Joined 01-March 08
Thanks for clarifying the Microsoft and Windows Update thing and for a great guide.

#25
tenchi103

tenchi103
  • Member
  • 6 posts
  • Joined 19-October 06
This is just a question out of curiousity and not a "when will it be done" question. Any chance that you will be updating the inf's since a lot have them have been updated with newest versions?




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users