XMSFactoryFactory.GetInstance(XMSC.CT_WMQ) возвращает фатальную ошибку: не удалось инициализировать XMSFactoryFactory

Я пытаюсь подключиться к очереди сообщений IBM, используя.net и MQ client v8.0.0.5, но продолжаю получать следующую ошибку:

Фатальная ошибка. Не удалось инициализировать XMSFactoryFactory

Не удалось загрузить файл или сборку "IBM.XMS.Client.Impl, версия =8.0.0.5, культура = нейтральная, PublicKeyToken=d2666ab12fca862b" или одна из ее зависимостей.

Системе не удается найти указанный файл.":"IBM.XMS.Client.Impl, версия =8.0.0.5, культура = нейтральная, PublicKeyToken=d2666ab12fca862b

Вот что я сделал до сих пор:

  • На моем компьютере установлен клиент MQ v8.0.0.5 (x64).
  • Ссылались на следующие сборки:
  • amqmdnet.dll
  • amqmdnsp.dll
  • amqmdxcs.dll
  • IBM.XMS.dll
  • IBM.XMS.Admin.dll
  • IBM.XMS.Client.Impl.dll
  • IBM.XMS.NLS.dll
  • IBM.XMS.Provider.dll
  • IBM.XMS.Util.dll

Теперь у меня также установлена ​​версия v7.5.0.4, и у меня нет проблем с подключением к очереди.

Еще одна вещь, которую я заметил, это то, что в GAC нет сборок для v8.0.0.5, но присутствуют сборки для v7.5.0.4. Может ли это быть причиной?

К сожалению, я не могу удалить v7.5.0.4, пока обе версии не работают нормально.

1 ответ

Решение

Да, MQ v8.0.0.5 XMS .NET сборок, которых нет в GAC, скорее всего, является причиной.

Вы можете взглянуть на альтернативу использования перенаправления, обновите файл app.config, чтобы использовать правильную версию сборок, необходимую вашему приложению. Найдите в вашем каталоге установки MQ файл с именем NonPrimaryRedirect.config, Этот файл содержит пример конфигурации, необходимой приложению для поиска конкретной версии сборки MQ/XMS .NET. Скопируйте содержимое этого файла в файл app.config вашего приложения и попробуйте. Вы должны убедиться, что все href атрибуты указывают на правильный путь.

Другие вопросы по тегам