Сообщение об ошибке “Не удалось установить связь с базовым менеджером транзакций”
-
03-07-2019 - |
Вопрос
Наш клиент недавно обновил веб-приложение ASP.NET 1.1 до ASP.NET, которое использует обработку транзакций COM +, и получил следующее исключение при попытке обработать транзакцию:
Тип исключения:Система.Транзакции.Исключение TransactionManagerCommunicationException
Сообщение:Не удалось установить связь с базовым менеджером транзакций .Внутренний Тип исключения:Система.Среда выполнения.Службы взаимодействия.COMException Код ошибки:-2147467259
Сообщение:Ошибка Возвращен результат E_FAIL из вызова COM-компонента.
Вот следующие настройки в настройках безопасности MSDTC:
-- Доступ к сетевому DTC
-- Разрешить Входящий
-- Разрешить Исходящий
-- Требуется подтверждение подлинности Входящего Абонента
Рабочая станция с Windows XP SP3 пытается установить соединение с компьютером с Windows Server 2003.
Кто-нибудь еще сталкивался с этой ошибкой и знает, как ее устранить?
Решение
Вам необходимо включить сетевой DTC-доступ как на вашей рабочей станции XP, так и на компьютере с Windows 2003.Кроме того, если ваше приложение публикуется только внутри компании, вы можете отключить проверку подлинности входящего вызывающего абонента и установить для нее значение "без проверки подлинности".
Другие советы
Добавьте C:\Windows\msdtc.exe в исключения брандмауэра как на брандмауэре, так и на сервере.Я потратил целую вечность, безуспешно пытаясь открыть определенные номера портов и диапазоны, прежде чем сделал это.
1) Отключить аутентификацию, помимо включения сетевого доступа к службе "распределенной координации транзакций" (взаимная аутентификация не работает так, как показано в Internet на компьютерах с xp sp3)
2) включить доступ к сети на клиентских ( веб-приложениях) и серверных ( sql server) машинах для службы "распределенной координации транзакций".
Вам также необходимо убедиться, что ваш брандмауэр открыт для портов 135 и 5000-5020.
Видишь эти:http://social.msdn.microsoft.com/forums/en-US/windowstransactionsprogramming/thread/71f7a219-c85d-4a04-973b-c73464f59606/ http://blogs.msdn.com/florinlazar/archive/2005/09/16/469064.aspx http://social.msdn.microsoft.com/forums/en-US/architecturegeneral/thread/7731d7a7-a9ad-42e7-b0bb-f3656b870304/ http://support.microsoft.com/kb/154596/
В случае, если вам нужна помощь в поиске настроек MSDTC, упомянутых в других ответах (как это сделал я), по следующей ссылке объясняется, как настроить MSDTC на сервере 2003.
http://itknowledgeexchange .techtarget.com/sql-server/how-to-configure-dtc-on-windows-2003/