6 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 NT Workstation operating system

  • 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 NT Server operating system

  • 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.18.1.4: Padding bytes contain uninitialized values.

<2> Section 2.2.18.1.5.2: Padding bytes contain uninitialized values.

<3> Section 2.2.19.2: Negative source journaling is not supported by Windows NT operating system. Windows 7 and later client operating systems and Windows Server 2008 and later server operating systems do not perform source journaling for messages sent to administration queues, notification queues, and order queues.

<4> Section 2.2.19.2: Windows stores a copy of the message in the local dead-letter queue on failure to deliver. Transactional messages are copied to the local transactional dead-letter queue. The dead-letter queue is a system-generated queue and is implementation-dependent. Windows 7 and later client operating systems and Windows Server 2008 and later server operating systems do not perform source journaling for messages sent to administration queues, notification queues, and order queues.

<5> Section 2.2.19.2: Windows copies the message to the system journal queue. The journal queue is a system-generated queue and is implementation-dependent. Windows 7 and later client operating systems and Windows Server 2008 and later server operating systems do not perform source journaling for messages sent to administration queues, notification queues, and order queues.

<6> Section 2.2.19.3: 40-bit and 128-bit encryption is not supported by Windows NT. AES encryption is not supported by Windows NT, Windows 2000 operating system, Windows XP, or Windows Server 2003.

<7> Section 2.2.19.3: The SHA-1 hash algorithm is not supported by Windows NT and Windows 2000. The SHA-256 and SHA-512 hash algorithms are not supported by Windows NT, Windows 2000, Windows XP, and Windows Server 2003. As a security enhancement, the default hash algorithm has been set to a stronger one, as described in the following list:

  • Windows NT and Windows 2000 default to MD5 (0x00008003).

  • Windows XP, Windows Server 2003, Windows Vista, and Windows Server 2008 default to SHA-1 (0x00008004).

  • Windows 7 and later client operating systems and Windows Server 2008 R2 and later server operating systems default to SHA-512 (0x0000800E).

<8> Section 2.2.19.3: Windows pads the MessagePropertiesHeader packet with uninitialized data.

<9> Section 2.2.20.1: The MultiQueueFormatHeader is not supported by Windows 2000 or Windows NT.

<10> Section 2.2.20.1: Padding bytes contain uninitialized values.

<11> Section 2.2.20.1: Padding bytes contain uninitialized values.

<12> Section 2.2.20.1: Padding bytes contain uninitialized values.

<13> Section 2.2.20.2: Padding bytes contain uninitialized values.

<14> Section 2.2.20.4: Coding errors present in Windows can prevent the UserMsgSequenceNumber from being set to the count of UserMessage Packets sent on a session.

<15> Section 2.2.20.4: If a destination queue manager encounters a memory allocation error while processing a message, it sets the window size to 1 in the outgoing SessionHeader header, which causes the destination queue manager to reduce its window to the same size. The source queue manager doubles the window size every 30 seconds until the window size returns to the default value of 64.

<16> Section 2.2.20.4: The maximum allowed value of this field can be configured by setting a value in the registry key HKEY_LOCAL_MACHINE\software\microsoft\msmq\parameters\MaxUnackedPacket. When this key is absent, the default maximum is 64.

<17> Section 2.2.20.4: The maximum allowed value of this field can be configured by setting a value in the registry key HKEY_LOCAL_MACHINE\software\microsoft\msmq\parameters\MaxUnackedPacket. When this key is absent, the default maximum is 64.

<18> Section 2.2.20.5: The TransactionHeader.Flags.FM and TransactionHeader.Flags.LM fields are not supported by Windows NT.

<19> Section 2.2.20.6: The default cryptographic provider for MSMQ on Windows XP and Windows Server 2003 is "Microsoft Base Cryptographic Provider v1.0" as described in [MSDN-BCP]. The default cryptographic provider for MSMQ on Windows Vista and later client operating systems and Windows Server 2008 and later server operating systems is "Microsoft AES Cryptographic Provider" as described in [MSDN-ACP].

<20> Section 2.2.20.6: Windows stores the queue manager public key in the MSMQ-Encrypt-Key attribute of the queue manager's MSMQ-Configuration object in Active Directory. During the queue manager startup, this value is queried once using the Lightweight Directory Access Protocol (LDAP).

<21> Section 2.2.20.6: The application can choose any of the currently available Microsoft cryptographic service providers (CSPs). The list of available Microsoft CSPs as well as the type and the name of each CSP are described in [MSDN-CSP].

<22> Section 2.2.20.6: The application can choose any of the currently available Microsoft cryptographic service providers (CSPs) listed in [MSDN-CSP].

<23> Section 2.2.20.8: To enable report messages, ensure that there is a registry key of type DWORD called HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSMQ\Parameters\Security\EnableReportMessages and that its value is set to 1.

<24> Section 2.3.1.5: When the property is not set, the storage size of a queue is limited only by the available disk space on the local computer or the computer quota. For Windows XP Professional operating system, there is no default computer quota. For Windows 2000, the default computer quota is 2 gigabytes. For the Windows Server 2003 family, the default computer quota is 8 gigabytes. For Windows Vista and later client operating systems and Windows Server 2008 and later server operating systems, the default computer quota is 4 gigabytes.

<25> Section 2.3.1.7: When the property is not set, the storage size of a queue is limited only by the available disk space on the local computer or by the journal quota. For Windows 2000, the default journal quota is 2 gigabytes. For Windows XP Professional, there is no default journal quota. For the Windows Server 2003 family, the default journal quota is 8 gigabytes. For Windows Vista and later client operating systems and Windows Server 2008 and later server operating systems, the default journal quota is 4 gigabytes.

<26> Section 2.3.1.16: This property was used only by Windows NT and Windows 2000 operating in MSMQ mixed-mode in the archived Message Queuing (MSMQ): Directory Service Replication Protocol [MC-MQDSRP] and the collocated Message Queuing (MSMQ): Directory Service Protocol [MS-MQDS] server for directory service replication among MSMQ Directory Service servers.

<27> Section 2.3.1.25: The security descriptor ACE AceType fields are limited to those supported by Windows NT 4.0 operating system ([MS-DTYP] section 2.4.4.1).

<28> Section 2.3.2.11: This property is used only by Windows NT and Windows 2000 operating in MSMQ mixed-mode in the archived Message Queuing (MSMQ): Directory Service Replication Protocol [MC-MQDSRP] and the collocated Message Queuing (MSMQ): Directory Service Protocol [MS-MQDS] server for directory service replication among MSMQ Directory Service servers.

<29> Section 2.3.2.15: Windows Vista and later client operating systems and Windows Server 2003 and later server operating systems accept an empty string.

<30> Section 2.3.2.15: Windows NT, Windows 95 operating system, Windows 98 operating system, and Windows 2000 require the following format in ABNF notation.

 MachineType = WindowsLiteral Space OSType Space UInt "." 
               UInt Space "(" BuildLiteral Space UInt "," Space Platform ")" 
               Space "-" Space MSMQLiteral Space UInt "." UInt Space 
               "(" BuildLiteral Space UInt ")"
 WindowsLiteral = %x57 %x69 %x6e %x64 %x6f %x77 %x73
 BuildLiteral = %x42 %x75 %x69 %x6c %x64
 MSMQLiteral = %x4d %x53 %x4d %x51
 OSType = *(%x20-7E)
 Platform = *(%x20-7E)
 UInt = *(%x30-39)
 Space = %x20

<31> Section 2.3.2.36: The security descriptor ACE AceType fields are limited to those supported by Windows NT 4.0 ([MS-DTYP] section 2.4.4.1).

<32> Section 2.3.3.7: This property was used only by Windows NT and Windows 2000 operating in MSMQ mixed-mode in the archived Message Queuing (MSMQ): Directory Service Replication Protocol [MC-MQDSRP] for directory service replication among MSMQ Directory Service servers.

<33> Section 2.3.3.13: The security descriptor ACE AceType fields are limited to those supported by Windows NT 4.0 ([MS-DTYP] section 2.4.4.1).

<34> Section 2.3.4.4: This property was used only by Windows NT and Windows 2000 operating in MSMQ mixed-mode in the archived Message Queuing (MSMQ): Directory Service Replication Protocol [MC-MQDSRP] for directory service replication among MSMQ Directory Service servers.

<35> Section 2.3.4.6: The security descriptor ACE AceType fields are limited to those supported by Windows NT 4.0 ([MS-DTYP] section 2.4.4.1).

<36> Section 2.3.5.2: Windows 2000 Professional and later client operating systems and Windows 2000 Server and later server operating systems use an internal default equivalent to setting this value to 0x00.

<37> Section 2.3.5.7: This property was used only by Windows NT and Windows 2000 operating in MSMQ mixed-mode in the archived Message Queuing (MSMQ): Directory Service Replication Protocol [MC-MQDSRP] for directory service replication among MSMQ Directory Service servers.

<38> Section 2.3.5.17: The security descriptor ACE AceType fields are limited to those supported by Windows NT 4.0 ([MS-DTYP] section 2.4.4.1).

<39> Section 2.3.6.2: This property was used only by Windows NT and Windows 2000 operating in MSMQ mixed-mode in the archived Message Queuing (MSMQ): Directory Service Replication Protocol [MC-MQDSRP] for directory service replication among MSMQ Directory Service servers.

<40> Section 2.3.7.4: This property was used only by Windows NT and Windows 2000 operating in MSMQ mixed-mode archived in the Message Queuing (MSMQ): Directory Service Replication Protocol [MC-MQDSRP] for directory service replication among MSMQ Directory Service servers.

<41> Section 2.3.8.6: This property was used only by Windows NT and Windows 2000 operating in MSMQ mixed-mode in the archived Message Queuing (MSMQ): Directory Service Replication Protocol [MC-MQDSRP] for directory service replication among MSMQ Directory Service servers.

<42> Section 2.3.9.5: The security descriptor ACE AceType fields are limited to those supported by Windows NT 4.0 ([MS-DTYP] section 2.4.4.1).

<43> Section 2.3.13.2: This property was used only by Windows NT and Windows 2000 operating in MSMQ mixed-mode in the archived Message Queuing (MSMQ): Directory Service Replication Protocol [MC-MQDSRP] for directory service replication among MSMQ Directory Service servers.

<44> Section 2.4: For more information about MSMQ-specific HRESULT values, see [MSDN-MQEIC].