7 Appendix B: Product Behavior

The information in this specification is applicable to the following Microsoft products or supplemental software. References to product versions include updates to those products.

The terms "earlier" and "later", when used with a product version, refer to either all preceding versions or all subsequent versions, respectively. The term "through" refers to the inclusive range of versions. Applicable Microsoft products are listed chronologically in this section.

Windows Client

  • Windows 2000 Professional operating system

  • Windows XP operating system

  • Windows Vista operating system

  • Windows 7 operating system

  • Windows 8 operating system

  • Windows 8.1 operating system

  • Windows 10 operating system

  • Windows 11 operating system

Windows Server

  • Windows 2000 Server operating system

  • Windows Server 2003 operating system

  • Windows Server 2008 operating system

  • Windows Server 2008 R2 operating system

  • Windows Server 2012 operating system

  • Windows Server 2012 R2 operating system

  • Windows Server 2016 operating system

  • Windows Server operating system

  • Windows Server 2019 operating system

  • Windows Server 2022 operating system

  • Windows Server 2025 operating system

Exceptions, if any, are noted in this section. If an update version, service pack or Knowledge Base (KB) number appears with a product name, the behavior changed in that update. The new behavior also applies to subsequent updates unless otherwise specified. If a product edition appears with the product version, behavior is different in that product edition.

Unless otherwise specified, any statement of optional behavior in this specification that is prescribed using the terms "SHOULD" or "SHOULD NOT" implies product behavior in accordance with the SHOULD or SHOULD NOT prescription. Unless otherwise specified, the term "MAY" implies that the product does not follow the prescription.

<1> Section 2.2.5: In Windows, the update agent uses BITS to download updates. It maps the update’s download priority to the corresponding BITS job priority:

Value

Description

dpLow

BG_JOB_PRIORITY_NORMAL

dpMedium

BG_JOB_PRIORITY_HIGH

dpHigh

BG_JOB_PRIORITY_FOREGROUND

dpExtraHigh

BG_JOB_PRIORITY_FOREGROUND

On Windows 8 and later and Windows Server 2012 and later, if the update's download priority is dpExtraHigh, the corresponding BITS job's BITS_JOB_PROPERTY_HIGH_PERFORMANCE bit is set to TRUE.

<2> Section 2.2.6: In Windows, the update agent user interface has an option to allow automatic selection of recommended updates.

When the value of the update's AutoSelectionMode is asLetWindowsUpdateDecide, the update agent user interface automatically selects the update if one of the following criteria is met:

  • The value of the update's AutoSelectOnWebSites ADM element is VARIANT_TRUE.

  • The system administrator has enabled automatic selection of recommended updates and the value of the update's BrowseOnly ADM element is VARIANT_FALSE.

  • The system administrator has enabled automatic selection of recommended updates and the value of the update's Type ADM element is utDriver and the value of the update's DeviceProblemNumber ADM element is 1 or 28.

<3> Section 2.2.7: When the system administrator has enabled automatic download of important updates and the value of the update's AutoDownloadMode ADM element is adLetWindowsUpdateDecide, update agentautomatically downloads the update if one of the following criteria is met:

  • The value of the update's AutoSelectOnWebSites ADM element is VARIANT_TRUE.

  • The system administrator has enabled automatic download of recommended updates and the value of the update's BrowseOnly ADM element is VARIANT_FALSE.

  • The system administrator has enabled automatic download of recommended updates, and the value of the update's Type ADM element is utDriver, and the value of the update's DeviceProblemNumber ADM element is 1 or 28.

<4> Section 3.2.3: In Windows, the update agent writes this data to the registry, and the server obtains this data by reading from the registry.

<5> Section 3.4.4: Opnums reserved for local use are not used by Windows.

<6> Section 3.6.3: In Windows, the update agent implements a local-only COM interface, and the server calls methods on this interface to obtain this data.

<7> Section 3.6.3: In Windows, the update agent implements a local-only COM interface, and the server calls methods on this interface to obtain this data.

<8> Section 3.6.3: In Windows, the update agent implements a local-only COM interface, and the server calls methods on this interface to obtain this data.

<9> Section 3.8.3: In Windows, the update agent implements a local-only COM interface, and the server calls methods on this interface to obtain this data.

<10> Section 3.8.3: In Windows, the update agent implements a local-only COM interface, and the server calls methods on this interface to obtain this data.

<11> Section 3.10.3: In Windows, the update agent implements a local-only COM interface, and the server calls methods on this interface to obtain this data.

<12> Section 3.12.3: In Windows, the update agent implements a local-only COM interface, and the server calls methods on this interface to obtain this data.

<13> Section 3.14.3: In Windows, the update agent implements a local-only COM interface, and the server calls methods on this interface to obtain this data.

<14> Section 3.14.3: In Windows, the update agent implements a local-only COM interface, and the server calls methods on this interface to obtain this data.

<15> Section 3.16.3: In Windows, the update agent implements a local-only COM interface, and the server calls methods on this interface to obtain this data.

<16> Section 3.16.4: Opnums reserved for local use are not used by Windows.

<17> Section 3.16.5.1: In Windows, the server uses the GetUserDefaultUILanguage Windows API to obtain the user locale.

<18> Section 3.17.4: On Windows, the object creation mechanism is the CoCreateInstance API function.

<19> Section 3.18.3: In Windows, the update agent implements a local-only COM interface, and the server calls methods on this interface to obtain the data. The data obtained and the methods called to obtain it depend on the purpose for which the server is created. For example, if the server is created in response to the IUpdate::Languages (Opnum 30) (section 3.20.4.22) method, the server obtains a reference to the language data already stored within the update object’s Abstract Data Model. The following table shows the ADM element returned by each method.

Interface method

Creating server's ADM element returned

IStringCollection::Copy (opnum 15) (section 3.18.4.8)

The List ADM element.

IUpdate::Languages (opnum 30) (section 3.20.4.22)

The Languages ADM element.

IUpdate::MoreInfoUrls (opnum 34) (section 3.20.4.26)

The MoreInfoUrls ADM element.

IUpdate::SecurityBulletinIDs (opnum 40) (section 3.20.4.32)

The SecurityBulletinIDs ADM element.

IUpdate::SupersededUpdateIDs (opnum 41) (section 3.20.4.33)

The SupersededUpdateIDs ADM element.

IUpdate::UninstallationSteps (opnum 46) (section 3.20.4.38)

The UninstallationSteps ADM element.

IUpdate::KBArticleIDs (opnum 47) (section 3.20.4.39)

The KBArticleIDs ADM element.

IUpdate2::CveIDs (opnum 55) (section 3.20.5.3)

The CveIDs ADM element.

IUpdateHistoryEntry::UninstallationSteps (opnum 19) (section 3.32.4.12)

The UninstallationSteps ADM element.

<20> Section 3.20.3: In Windows, the update agent implements a local-only COM interface, and the server calls methods on this interface to obtain this data.

<21> Section 3.20.3: In Windows, the update agent implements a local-only COM interface, and the server calls methods on this interface to obtain this data.

<22> Section 3.20.3: In Windows, the server selects the first driver update entry that appears in the update metadata to be the default driver update entry.

<23> Section 3.20.4: Opnums reserved for local use are not used by Windows.

<24> Section 3.20.4.27: [MSFT-MSRC] rates the enumerated set of values as follows:

Value

Description

Critical

The MSRC rates the fixed issue as "Critical."

Important

The MSRC rates the fixed issue as "Important."

Moderate

The MSRC rates the fixed issue as "Moderate."

Low

The MSRC rates the fixed issue as "Low."

<25> Section 3.20.5: Opnum 56 is not used by Windows.

<26> Section 3.20.10:

Opnum

Description

64

Not used by Windows.

<27> Section 3.22.3: In Windows, the update agent implements a local-only COM interface, and the server calls methods on this interface to obtain this data.

<28> Section 3.22.3: In Windows, the update agent implements a local-only COM interface, and the server calls methods on this interface to obtain this data.

<29> Section 3.22.4: Opnum 15 is not used by Windows.

<30> Section 3.24.3: In Windows, the update agent implements a local-only COM interface, and the server calls methods on this interface to obtain this data.

<31> Section 3.28.3: In Windows, the update agent implements a local-only COM interface, and the server calls methods on this interface to obtain this data.

<32> Section 3.28.3: In Windows, the update agent implements a local-only COM interface, and the server calls methods on this interface to obtain this data.

<33> Section 3.30.3: In Windows, the update agent implements a local-only COM interface, and the server calls methods on this interface to obtain this data.

<34> Section 3.32.3: In Windows, the update agent implements a local-only COM interface, and the server calls methods on this interface to obtain this data.

<35> Section 3.34.3: In Windows, the update agent implements a local-only COM interface, and the server calls methods on this interface to obtain this data.

<36> Section 3.36.3: In Windows, the update agent implements a local-only COM interface, and the server calls methods on this interface to obtain this data.

<37> Section 3.38.3: In Windows, the locale is passed from the object implementing IUpdateSession (or its derived interfaces) to the object implementing IUpdateSearcher (or its derived interfaces) via a private method call.

<38> Section 3.38.3: In Windows, the update agent stores the results of all update installation attempts in a Jet/ESE-based database. The update agent implements a local-only COM interface that provides controlled access to this database, and the server calls methods on this interface to obtain this data.

<39> Section 3.38.3: In Windows, the update agent stores the results of all update installation attempts in a Jet/ESE-based database. The update agent implements a local-only COM interface that provides controlled access to this database, and the server calls methods on this interface to obtain this data.

<40> Section 3.38.4: Opnums reserved for local use are not used by Windows.

<41> Section 3.38.4.11: In Windows, the update agent implements a local-only COM interface, and the server calls methods on this interface to trigger this functionality.

<42> Section 3.42.3: In Windows, the update agent implements a local-only COM interface, and the server calls methods on this interface to obtain this data.

<43> Section 3.44.3: In Windows, the update agent implements a local-only COM interface, and the server calls methods on this interface to obtain this data.

<44> Section 3.44.3: In Windows, the update agent implements a local-only COM interface, and the server calls methods on this interface to obtain this data.

<45> Section 3.44.3: In Windows, the update agent implements a local-only COM interface, and the server calls methods on this interface to obtain this data.

<46> Section 3.44.4: Opnums reserved for local use are not used by Windows.

<47> Section 3.44.4.4: In Windows, the update agent implements a local-only COM interface, and the server calls methods on this interface to trigger this functionality.

<48> Section 3.44.5.4: In Windows, the update agent implements a local-only COM interface, and the server calls methods on this interface to trigger this functionality.

<49> Section 3.46.3: In Windows, the update agent implements a local-only COM interface, and the server calls methods on this interface to obtain this data.

<50> Section 3.48.3: In Windows, the update agent implements a local-only COM interface, and the server calls methods on this interface to obtain this data.

<51> Section 3.50.3: In Windows, the update agent implements a local-only COM interface, and the server calls methods on this interface to obtain this data.

<52> Section 3.52.4.1: On Windows 2000 operating system, Windows Server 2003, Windows XP, Windows Server 2003 R2 operating system, Windows Vista, Windows Server 2008, Windows 7, and Windows Server 2008 R2 operating system, the most recent version of the Windows Update Agent returns the value 6. On Windows 8 and later and Windows Server 2012 and later, the most recent version of the Windows Update Agent returns the value 8.

<53> Section 3.52.4.1: On Windows running the latest Windows Update Agent, the value 0 is returned.

<54> Section 3.52.4.1: On Windows 2000, Windows Server 2003, Windows XP, Windows Server 2003 R2, Windows Vista, and Windows Server 2008 running the latest Windows Update Agent, the bstrVal member is set to "7.4.7600.226". On Windows 7 and Windows Server 2008 R2, the bstrVal member is set to "7.3.7600.16385". On Windows 7 operating system with Service Pack 1 (SP1) and Windows Server 2008 R2 operating system with Service Pack 1 (SP1), the bstrVal member is set to "7.5.7601.17514". On Windows 8 and Windows Server 2012, the bstrVal member is set to a value beginning with "7.8". On Windows 8.1 and Windows Server 2012 R2, the value begins with "7.9". On Windows 10 and Windows Server 2016 the value begins with "10.0."