When you install Windows Server 2003, most of the services will be off by default, including MSDTC network access. If you are using COM+/Enterprise Services and [Transactions], you are most likely to hit errors when you want to go distributed: flow transactions to another computer, talk to a resource manager as SQL server on another machine etc. To enable your distributed scenarios you need to enable MSDTC network transactions.

One way to do it is to follow the steps in this KB article: http://support.microsoft.com/default.aspx?scid=kb;en-us;817064. But if you like being in control, you can use Control Panel\Administrative Tools\Component Services. Then select Component Services\Computer\My Computer, right-click and choose Properties. On the MSDTC tab, press "Security Configuration..." button and then carefully select only what you need. For instance to flow transactions to another machine you only need to enable "Network DTC Access\Network Transactions". You can do the same thing programmatically using IDtcNetworkAccessConfig implemented by the transaction object of the DTC proxy.

Windows Server 2003 is opening a new trend that we all need to get used to. It is not anymore "if I don't need it, I should probably disable it"; now it is "if I need it, I have to enable it".

[Originally posted Oct 21, 2003]