Ошибка с Slb.License при регистрации модуля - PullRequest
1 голос
/ 20 декабря 2011

У меня есть проект, который ссылается на лицензию Slb.License для Ocean2010. Я строю против Petrel 2010.1.

После того, как я установил свой плагин на машине с> Petrel 2010.1 (2010.2.2), я использую registermodule.exe для регистрации своих модулей. Все модули регистрируются правильно, кроме лицензионного модуля, который имеет ссылки на Slb.License.

RegisterModule.exe выдает мне ошибку: «Указанный модуль не может быть загружен. Причина: не удалось загрузить файл или сборку» Slb.License, версия = 2009.1.4.32700, культура = нейтральная, PublicKeyToken = 05cb3974809 3345b 'или одна из его зависимостей. Определение манифеста расположенной сборки делает не совпадает со ссылкой на сборку. (Исключение из HRESULT: 0x80131040) "

Версия с ошибкой, 2009.1.4.32700, является версией Slb.License, которая поставляется вместе с Petrel 2010.1, против которой я строю. Версия Slb.License, которая поставляется вместе с Petrel 2010.2.2, - это 2010.1.5.21635.

Есть мысли? Если я вручную добавлю свой лицензионный модуль в Petrel.exe.config, мой плагин загружается правильно и работает правильно. Его RegisterModule.exe, с которым у меня есть проблемы.

Спасибо.

EDIT
Это работало в предыдущей сборке, но не уверен, как именно.

1 Ответ

1 голос
/ 21 декабря 2011

Вы можете проверить:- RegisterModule использует petrel.exe.config для перенаправления привязки.Вы должны увидеть

<assemblyIdentity name="Slb.License" publicKeyToken="05cb39748093345b" culture="neutral" />
     <bindingRedirect oldVersion="2009.1.4.32700-2010.1.4.63024" newVersion="2010.1.5.21635" />

там- Убедитесь, что в области Petrel есть только 1 копия файла Slb.License.dll

. В качестве временного решения вы можете использовать параметр / f, который игнорирует любую ошибку и регистрирует ваш модуль.

...