Event ID 4112 — Microsoft Distributed Transaction Coordinator Service Startup

Applies To: Windows Server 2008

The Microsoft Distributed Transaction Coordinator service (MSDTC) coordinates transactions, regardless of failures that may occur during the process, so that the work is committed as a single transaction even if the work spans multiple resource managers on multiple computers.

MSDTC is a Windows service. By default, the service is configured as a manual service rather than as an automatic service. However, most applications demand-start the service as needed. If necessary, the administrator can start the service with the Services administrative tool.

Event Details

Product: Windows Operating System
ID: 4112
Source: Microsoft-Windows-MSDTC
Version: 6.0
Symbolic Name: IDS_DTC_E_NOTMSTART
Message: Could not start the MS DTC Transaction Manager.%0

Diagnose

Check the system for a low-memory condition. If a low-memory condition exists, close applications to free system memory.

There may be missing files. Check to ensure that Comres.dll is present by following the steps in "Confirm that Comres.dll is present in the System32 folder."

When you have resolved a low-memory condition and ensured that Comres.dll exists, restart MSDTC by following the steps in "Restart MSDTC."

Resolve

Check the XA provider registry key

An error condition may have resulted from a problem with the registry key for an X/Open Distributed Transaction Processing Standard (XA) provider. Check that the registry key is appropriate for your XA provider, and then restart the Microsoft Distributed Transaction Coordinator service (MSDTC).

To perform these procedures, you must have membership in Administrators, or you must have been delegated the appropriate authority.

To check that the registry key is appropriate for your XA provider:

Caution: Incorrectly editing the registry might severely damage your system. Before making changes to the registry, you should back up any valued data.

  1. Click Start, click Run, and then type regedit. If the User Account Control dialog box appears, confirm that the action it displays is what you want, and then click Continue.
  2. Click HKEY_LOCAL_MACHINE, expand Software, expand Microsoft, expand MSDTC, and then click XADLL. Check that the registry key is appropriate for your XA provider.
  3. To change the registry key, in the details window, right-click the provider information that you want to change, and then click Modify.
  4. Make the required changes to the entry in Value data, and then click OK.

To restart MSDTC:

  1. Click Start, and then click Command Prompt.
  2. At the command prompt, type net start msdtc, and then press ENTER.

Confirm that Comres.dll is present in the System32 folder

The system could not load the Comres.dll file. An error condition may result if a required file is missing from the System32 folder in the Windows directory or if the file is corrupted.

To perform this procedure, you must have membership in Administrators, or you must have been delegated the appropriate authority.

To confirm that the required file Comres.dll is present in the System32 folder:

  1. Right-click Start, and then click Explore.
  2. Navigate to the Windows folder. In the details pane, double-click System32.
  3. In Search, type comres.dll. If the file is present, it is listed in the details pane.
  4. If the file is present, it may be corrupted. Restore the file from backup.
  5. If the file is missing, restore it from backup.

Restart MSDTC

The system reports that the Microsoft Distributed Transaction Coordinator service (MSDTC) encountered an invalid Class ID for the Transaction Bridge component.

At this time there is no troubleshooting information for this issue. We recommend that you restart the service. If this does not resolve the issue and you continue to get this error, note any details in the event message, and then contact Microsoft Customer Service and Support (CSS). For information about how to contact CSS, see Enterprise Support (https://go.microsoft.com/fwlink/?LinkId=52267).

To perform this procedure, you must have membership in Administrators, or you must have been delegated the appropriate authority.

To restart MSDTC:

  1. Click Start, and then click Run.

  2. Type comexp.msc, and then click OK. If the User Account Control dialog box appears, confirm that the action it displays is what you want, and then click Continue.

  3. Click Services.

  4. In the Services pane, right-click Distributed Transaction Coordinator, and then click Restart.

    The system stops and then restarts MSDTC.

You can alternatively stop and restart the Microsoft Distributed Transaction Coordinator service (MSDTC) using the steps listed below:

  1. Click Start, and then click Command Prompt.
  2. At the command prompt, type net stop msdtc, and then press ENTER.
  3. At the command prompt, type net start msdtc, and then press ENTER.

Free up system memory

Close some applications to free up the memory.

When you have closed applications to free up some additional memory, restart the Microsoft Distributed Transaction Coordinator service (MSDTC).

To perform this procedure, you must have membership in Administrators, or you must have been delegated the appropriate authority.

To restart MSDTC:

  1. Click Start, and then click Run.

  2. Type comexp.msc, and then click OK. If the User Account Control dialog box appears, confirm that the action it displays is what you want, and then click Continue.

  3. Click Services.

  4. In the Services pane, right-click Distributed Transaction Coordinator, and then click Restart.

    The system stops and then restarts MSDTC.

To alternatively stop and restart MSDTC:

  1. Click Start, and then click Command Prompt.
  2. At the command prompt, type net stop msdtc, and then press ENTER.
  3. At the command prompt, type net start msdtc, and then press ENTER.

 

Verify

To perform this procedure, you must have membership in Administrators, or you must have been delegated the appropriate authority.

To verify that the Microsoft Distributed Transaction Coordinator service (MSDTC) is running:

  1. Click Start, and then click Command Prompt.
  2. At the command prompt, type sc query msdtc, and then press ENTER.
  3. The system responds with information about the service. Confirm that these two items appear: SERVICE_NAME: msdtc and STATE : 4 RUNNING.

Microsoft Distributed Transaction Coordinator Service Startup

Application Server