• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 2963
  • Last Modified:

Network access for Distributed Transaction Manager (MSDTC) has been disabled

I'm getting the following error when trying to do a transaction to a remote server.

System.Transactions.TransactionManagerCommunicationException: Network access for Distributed Transaction Manager (MSDTC)
has been disabled. Please enable DTC for network access in the security configuration for MSDTC using the Component Services Ad...

I've tried numerous things to resolve this problem with no luck.

Here is the scenario:
I have a windows application that is running from either Windows XP SP2, Windows Vista 64, or Windows 2003 Server (all get the same error message).
The application connects to a SQL 2005 Server running on a remote W2K3 SP1 server.
MSDTC is running on both the client AND the server (so the error message is useless as it MSDTC service is IN FACT running).
Both client and server allow both incoming and outgoing connections.
Firewalls have been disabled on both Client and Server.
I set up authentication to NONE on both client and server.
Same error...
The application works fine on a local computer with a local database (and the transactions work wonderfully)

I'm stumped on this one.
I've attached a couple of server settings screenshots for clarity.



Settings1.jpg
Settings2.jpg
0
bd9000
Asked:
bd9000
  • 4
  • 2
1 Solution
 
Jim P.Commented:
Make sure that the COM Security is set to everyone and anonymous login.


COM-Security.jpg
0
 
bd9000Author Commented:
on the client or the server?
0
 
bd9000Author Commented:
I uninstalled and reinstalled MSDTC on both the server and client and rebooted twice each.
I get the new message:

system.transactions.transactionpromotionException: Failure while attempting to promote transaction -->

Is there any step-by-step instructions out there that show how to get MSDTC to ACTUALLY work between a REMOTE server and a client - the most common situation for 10million+ Windows developers?
Microsoft's help is useless.  Keeping systems wide-open and vulnerable seems to defeat MS's intent on securing Windows without tellings us how to disable all the "security" patches so we can get actual work done!
0
Concerto's Cloud Advisory Services

Want to avoid the missteps to gaining all the benefits of the cloud? Learn more about the different assessment options from our Cloud Advisory team.

 
Jim P.Commented:
Basically M$ has abandoned DCOM & DTC in favor of the .NET versions of the same crap. My experience with it has been the minimal of getting a specific vendor app working in our environment. If you ending up understanding it, "You're a better man than I am, Gunga Din!".

Chapter 11  Building Secure Serviced Components
http://msdn.microsoft.com/en-us/library/aa302427.aspx

SAMPLE: A Simple DCOM Client Server Test Application
http://support.microsoft.com/kb/259011/

How to configure COM Internet Services (CIS) on the client side
http://support.microsoft.com/kb/265340
0
 
bd9000Author Commented:
I'm using DotNet 3.5 SP1,  ADO.NET still uses DCOM, apparently wrapped up inside managed code (thus making it unmanaged again -sigh!).  

The app is entirely managed code, written in VS2008 - works fine on a LAN - fails when one of the SQL Servers in the transaction is off-site.

This code worked fine just a year ago (on DotNet3.5) running on W2K3 (no SP) and XP SP2.

What joke!  Oracle, here we come!
0
 
bd9000Author Commented:
Here's the real answer to this problem.
 It can't be done without a VPN.   REPEAT, you MUST have a VPN or a STATIC IP ADDRESS!
MSDTC can't work at all over the Internet without a VPN tunnel and will never work with NAT routers (as per Microsoft).
I can't figure what the "D" in DTC stands for, certainly not "Distributed"! :)
0

Featured Post

Free Tool: Site Down Detector

Helpful to verify reports of your own downtime, or to double check a downed website you are trying to access.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

  • 4
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now