Microsoft KB Archive/883955

From BetaArchive Wiki

Article ID: 883955

Article Last Modified on 12/5/2007



APPLIES TO

  • Microsoft COM+ 1.5, when used with:
    • Microsoft Windows Server 2003, Standard Edition (32-bit x86)




Important This article contains information about how to modify the registry. Make sure to back up the registry before you modify it. Make sure that you know how to restore the registry if a problem occurs. For more information about how to back up, restore, and modify the registry, click the following article number to view the article in the Microsoft Knowledge Base:

256986 Description of the Microsoft Windows registry


SUMMARY

This article lists the COM+ bugs that are fixed in Microsoft Windows Server 2003 COM+ 1.5 Rollup Package 3. The package contains all the fixes that were released in previous Windows Server 2003 COM+ 1.5 rollup packages.

Issues that are fixed in the hotfix package

The following issue is fixed in this hotfix package:

  • 890634 DTC Clustered resource will not come online if Administrator account lacks SE_SECURITY_NAME privilege

  • 875498 If the DTC service is restarted many times, the service eventually does not restart in Windows Server 2003

The following issues are also fixed in this hotfix package but were not previously documented in Microsoft Knowledge Base articles:

  • An "8000ffff" error is returned by COM+ method calls

    An "8000ffff" error occurs when a CreateObject call is made in Visual Basic for Scripting (VBS) while you are running with a Windows-based script host (WScript.exe). The CreateObject method calls into the CoGetClassObject function. The function returns an incorrect result code that the script reports as "8000ffff."

    Notice that this error can also occur as a result of this bug when one of the following conditions is true:
    • You use the CreateObject method rather than use the Server.CreateObject method to create an object from an ASP application.
    • You create a COM object from .NET code by using the COM Interop.

    The occurrence of this error is dependent on the number of IP addresses on the computer. The occurrence of this error is also dependent on the overall length of the string representation of these IP addresses. For example, If the computer has more than about 14 IP addresses, you are likely to encounter this error. Another example, if the IP addresses are in the x.x.x.x format rather than the xxx.xxx.xxx.xxx format, you are likely to encounter this error.

  • The Imoniker::GetDisplayName method does not obtain the correct display name in Japanese Windows Server 2003

    When Japanese characters are used for the Item name in the system standard Item moniker, the Japanese Item name will have unreadable characters when the name is saved and retrieved back.

    File moniker support has been changed to return the correct data for non-ANSI characters.
  • DTC Proxy stops responding when xa_recover operations are initiated on separate threads

    One or more xa_recover operations that are initiated on separate threads may cause the Distributed Transaction Coordinator (DTC) proxy to stop responding.

    This hotfix includes new code that serializes the xa_recover operation to avoid a race condition that may occur when more than one resource manager thread calls the xa_recover function.
  • COM+ Explorer does not update the statistics on instances of poolable objects in a library application

    Pooled component statistics do not update in the Component Services Explorer for instances of pooled objects.

    Object pool tracking has been changed to start tracking statistics for library applications.
  • An SC_SCREENSAVE event or an SC_MONITORPOWER event causes continuous beeping

    The computer beeps continuously if an SC_SCREENSAVE event or an SC_MONITORPOWER event occurs during a pending COM call.

    COM+ has been changed to no longer sound the beep when a screen saver or power monitoring event occurs.
  • Huge ComplustraceX.log files are created when the COM+ event system is used

    The COM+ event system creates any number of trace logs but cleans up only the first ten logs.

    The COM+ event system has been changed to automatically remove all trace logs. Typically, the COM+ event system keeps the last ten log files. If you want to increase or decrease the number of log files that are kept, you must modify the following registry subkey:

    HKLM\SOFTWARE\Microsoft\OLE\Instrumentation
    TraceLogFilesLimit (REG_DWORD)
  • A RPC_C_AUTH_LEVEL_DEFAULT flag that is used at activation time or at later times can cause a "0x8001011a" error

    When you make a DCOM call, and you use the RPC_C_AUTH_LEVEL_DEFAULT activation time or a later time to set the RPC Authentication Level flag, the client may receive a "0x8001011a (RPC_E_NO_GOOD_SECURITY_PACKAGES)" error message.

    COM activation now remaps the RPC_C_AUTHN_DEFAULT flag to the RPC_C_AUTHN_GSS_NEGOTIATE constant to correct this error.
  • Heap corruption occurs in the COM+ event system

    Heap corruption may occur in the COM+ event system. An access violation may result while event notification messages are processed if a call to the PostThreadMessage function does not succeed.

    The event system has been changed to correctly handle this scenario.
  • The ole32!CoGetObjectContext function is slow in Webdata scenarios when it runs under common language runtime 2.0

    The ole32!CoGetObjectContext function is too slow in Webdata scenarios when the function runs under common language runtime 2.0.

    The CoGetObjectContext function has been changed to improve its efficiency.
  • DTC proxy causes a memory leak in a client process when it calls the xa_start function

    The DTC proxy code can leak an internal object instance when the xa_start function is called by using an invalid XID.
  • "A new COM+ tracing session is taking too much to open" error is logged

    If an event logging session takes more time than expected to open, the following error message may be logged in the event log:

    A new COM+ tracing session is taking too much to open

    This fix removes this message from the COM+ event system.

  • The xa_rollback function call is not always sent when you perform a rollback

    The xa_rollback function call is not always sent when you perform a rollback with an Oracle-linked server from Microsoft SQL Server. This problem occurs when the Oracle-provided ologo function is called while the transaction is in the active state. The state transitions to TRANSTATE_UNILATERALLY_ABORTING without calling the xa_rollback function.

    This hotfix includes new code to allow DTC to call the xa_rollback function before entering TRANSTATE_UNILATERALLY_ABORTING.
  • The ExportApplication method fails with ERROR_MORE_DATA if the RemoteServerName is longer than 16 characters

    If an Application Proxy RemoteServerName contains more than 16 characters in the Options tab of My Computer properties in Component Services, an attempt to export the Application Proxy will fail with ERROR_MORE_DATA.

    COM+ now supports RemoteServerName names of up to MAX_PATH in length.
  • A memory leak occurs when you are using proxy and stub buffer objects

    Under some circumstances, COM may not release an internal object that is used to manage proxy and stub buffer objects.

    COM code has been changed to correctly release these objects.
  • A memory leak occurs when you call the xa_open function in a client process while DTC is offline

    When you call the xa_open function in a client process while DTC is offline, a memory leak may occur.

    This hotfix includes new code that does not let an internal DTC object leak when a connection to Transaction Manager is unavailable, and an xa_open function call is in progress.
  • A memory leak occurs when the CoUninitialize function is called in a loop

    When the CoUninitialize function is called in a loop, it may not clean up an internal synchronization object. For example, the problem may occur if you use the following procedure in code:
    1. CoInitialize(STA or MTA)
    2. for (x = 1 to 3) { CoCreateInstance(some object); someobject->Release(); }
    3. CoUninitialize
    4. Goto #1

    CoUnitialize code has been changed to correctly release these objects.

  • "Overlapped I/O is in progress" message occurs when you try to log on user_domain\user for an application

    This error message is erroneous when the LsaLogonUser function fails after it is called from within a DCOM application.

    The message has been removed.
  • A registry option to disable Nagle algorithm is available

    Warning Serious problems might occur if you modify the registry incorrectly by using Registry Editor or by using another method. These problems might require that you reinstall your operating system. Microsoft cannot guarantee that these problems can be solved. Modify the registry at your own risk.

    This hotfix adds a new registry option that lets you control whether the Nagle algorithm socket option is set or not. To configure this option, follow these steps:
    1. Click Start, click Run, type regedit, and then click OK.
    2. Locate and then click the following registry subkey:

      HKEY_LOCAL_MACHINE\Software\Microsoft\MSDTC\

    3. On the Edit menu, point to New, and then click DWORD Value.
    4. Type TcpNoDelay for the name of the DWORD, and then press ENTER.
    5. Right-click TcpNoDelay, and then click Modify.
    6. In the Value data box, type 1 to turn on the Nagle algorithm socket option, or type 0 to turn off the option.
    7. Click OK, and then quit Registry Editor.


MORE INFORMATION

Service pack information

To resolve the issues that this article lists, obtain the latest service pack for Windows Server 2003. For more information, click the following article number to view the article in the Microsoft Knowledge Base:

889100 How to obtain the latest service pack for Windows Server 2003


Hotfix information

A supported hotfix is now available from Microsoft. However, this hotfix is intended to correct only the problem that is described in this article. Apply this hotfix only to systems that are experiencing this specific problem. This hotfix might receive additional testing. Therefore, if you are not severely affected by this problem, we recommend that you wait for the next service pack that contains this hotfix.

To resolve this problem, submit a request to Microsoft Online Customer Services to obtain the hotfix. To submit an online request to obtain the hotfix, visit the following Microsoft Web site:

Note If additional issues occur or any troubleshooting is required, you might have to create a separate service request. The usual support costs will apply to additional support questions and issues that do not qualify for this specific hotfix. To create a separate service request, visit the following Microsoft Web site:

Prerequisites

Windows Server 2003

Restart information

You must restart your computer after you apply this hotfix.

Hotfix replacement information


This hotfix is not replaced by a later hotfix.

Bugs that are fixed in the Windows Server 2003 COM+ 1.5 rollup packages are cumulative. The following article lists previous rollup packages:

821751 Availability of Windows Server 2003 COM+ 1.5 Rollup Package 1


Registry information

You must create or modify a registry key to use one of the hotfixes that is contained in this package.

For additional information about how to back up, restore, and edit the registry, click the following article number to view the article in the Microsoft Knowledge Base:

256986 Description of the Microsoft Windows registry


Hotfix file information

This hotfix contains only those files that you must have to correct the issues that this article lists. This hotfix may not contain all the files that are required to fully update a product to the latest build.

The English version of this hotfix has the file attributes (or later file attributes) that are listed in the following table. The dates and times for these files are listed in coordinated universal time (UTC). When you view the file information, it is converted to local time. To find the difference between UTC and local time, use the Time Zone tab in the Date and Time tool in Control Panel.

Windows Server 2003, 32-bit editions
Date            Time    Version                 Size      File name
----------------------------------------------------------------------
02-Sep-2004 18:28   2001.12.4720.207    263,680   Catsrv.dll    
02-Sep-2004 18:28   2001.12.4720.207    587,264   Catsrvut.dll  
02-Sep-2004 18:28   2001.12.4720.207    98,304    Clbcatex.dll  
02-Sep-2004 18:28   2001.12.4720.207    493,056   Clbcatq.dll   
02-Sep-2004 18:28   2001.12.4720.207    58,368    Colbact.dll   
02-Sep-2004 18:28   2001.12.4720.207    189,440   Comadmin.dll  
02-Sep-2004 18:29   2001.12.4720.207    1,203,712 Comsvcs.dll   
02-Sep-2004 18:29   2001.12.4720.207    566,272   Comuid.dll    
02-Sep-2004 18:29   2001.12.4720.207    226,816   Es.dll    
02-Sep-2004 18:29   2001.12.4720.207    444,416   Msdtcprx.dll  
02-Sep-2004 18:29   2001.12.4720.207    971,776   Msdtctm.dll   
02-Sep-2004 18:29   2001.12.4720.207    160,768   Msdtcuiu.dll  
02-Sep-2004 18:29   2001.12.4720.207    76,288    Mtxclu.dll    
02-Sep-2004 18:29   2001.12.4720.207    109,056   Mtxoci.dll
Windows Server 2003, 64-bit edition
Date         Time   Version            Size    File name        Platform
------------------------------------------------------------------------
02-Sep-2004  19:35  2001.12.4720.20   641,024  Catsrv.dll       IA-64
02-Sep-2004  19:35  2001.12.4720.20 1,567,744  Catsrvut.dll     IA-64
02-Sep-2004  19:35  2001.12.4720.20   263,680  Clbcatex.dll     IA-64
02-Sep-2004  19:35  2001.12.4720.20 1,294,336  Clbcatq.dll      IA-64
02-Sep-2004  19:35  2001.12.4720.20   179,712  Colbact.dll      IA-64
02-Sep-2004  19:35  2001.12.4720.20   412,160  Comadmin.dll     IA-64
02-Sep-2004  19:35  2001.12.4720.20 3,132,416  Comsvcs.dll      IA-64
02-Sep-2004  19:35  2001.12.4720.20 1,873,408  Comuid.dll       IA-64
02-Sep-2004  19:35  2001.12.4720.20   653,824  Es.dll           IA-64
02-Sep-2004  19:35  2001.12.4720.20 1,304,576  Msdtcprx.dll     IA-64
02-Sep-2004  19:35  2001.12.4720.20 3,166,720  Msdtctm.dll      IA-64
02-Sep-2004  19:35  2001.12.4720.20   462,848  Msdtcuiu.dll     IA-64
02-Sep-2004  19:35  2001.12.4720.20   203,776  Mtxclu.dll       IA-64
02-Sep-2004  19:35  2001.12.4720.20   319,488  Mtxoci.dll       IA-64
02-Sep-2004  19:35  5.2.3790.207    3,567,104  Ole32.dll        IA-64
31-Mar-2004  04:25  5.2.3790.141       73,216  Rpcproxy.dll     IA-64
31-Mar-2004  04:25  5.2.3790.141    2,150,400  Rpcrt4.dll       IA-64
02-Sep-2004  19:35  5.2.3790.207      688,640  Rpcss.dll        IA-64
02-Sep-2004  19:29  2001.12.4720.20   263,680  Wcatsrv.dll      x86
02-Sep-2004  19:29  2001.12.4720.20   587,264  Wcatsrvut.dll    x86
02-Sep-2004  19:29  2001.12.4720.20    98,304  Wclbcatex.dll    x86
02-Sep-2004  19:29  2001.12.4720.20   493,056  Wclbcatq.dll     x86
02-Sep-2004  19:29  2001.12.4720.20    58,368  Wcolbact.dll     x86
02-Sep-2004  19:29  2001.12.4720.20   189,440  Wcomadmin.dll    x86
02-Sep-2004  19:29  2001.12.4720.20 1,203,712  Wcomsvcs.dll     x86
02-Sep-2004  19:29  2001.12.4720.20   226,816  Wes.dll          x86
02-Sep-2004  19:29  2001.12.4720.20   444,416  Wmsdtcprx.dll    x86
02-Sep-2004  19:29  2001.12.4720.20   160,768  Wmsdtcuiu.dll    x86
02-Sep-2004  19:29  2001.12.4720.20    76,288  Wmtxclu.dll      x86
02-Sep-2004  19:29  2001.12.4720.20   109,056  Wmtxoci.dll      x86
02-Sep-2004  19:29  5.2.3790.207    1,189,376  Wole32.dll       x86
31-Mar-2004  04:26  5.2.3790.141       26,112  Wrpcproxy.dll    x86
31-Mar-2004  04:26  5.2.3790.141      544,256  Wrpcrt4.dll      x86

REFERENCES

For additional information, click the following article number to view the article in the Microsoft Knowledge Base:

824684 Description of the standard terminology that is used to describe Microsoft software updates


Keywords: kberrmsg kbbug kbfix kbwinserv2003presp1fix kbhotfixrollup kbhotfixserver kbqfe KB883955