如何以编程方式配置MSDTC设置?

时间:2014-04-04 17:43:16

标签: c# transactionscope msdtc

由于MSDTC配置中的设置错误,我使用TRANSACTION SCOPE会出现一些错误, 所以我找到了解决方案......

转到控制面板>管理工具>组件服务>展开组件服务> expand Computers>展开我的电脑>展开分布式事务处理协调器>右键单击DTC Local>属性> 转到安全选项卡。

现在设置你需要的东西,在我的情况下我检查了这些:

  • 网络DTC访问| - >在安全设置小组
  • 允许远程客户端| - >在客户和管理小组
  • 允许入站| - >在事务管理器通信组
  • 允许出站| - >在事务管理器通信组
  • 无需身份验证| - >在事务管理器通信组

我想使用c#以编程方式执行此操作。

有人知道如何解决这个问题

2 个答案:

答案 0 :(得分:4)

这些设置存储在注册表中。

您可以通过代码在那里更改它们,然后使用正常的.NET Windows服务控件类重新启动MSDTC服务。

我没有找到更正式的方法直接更改这些设置。

存储有趣设置的密钥是

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSDTC\Security

请注意,用于停止/启动的服务名称不是MSDTC,而是Distributed Transaction Coordinator

答案 1 :(得分:4)

我在此链接中找到了解决方案:

http://www.codeproject.com/Articles/729805/MSDTC-Manager?msg=4765921#xx4765921xx

我刚做了一些改动,因为我不需要完整的功能。

真的有用