2011-12-19 2 views
1

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

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

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

версии в ошибке, 2009.1.4.32700, является версией SLB. Лицензия, упакованная с Petrel 2010.1, с которой я строю. Версия Slb.License, упакованная с Petrel 2010.2.2, - 2010.1.5.21635.

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

Спасибо.

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

ответ

1

Вы можете проверить:
- 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" /> 

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

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

+0

Да, я вижу переадресацию привязки в файле Petrel.exe.configs. Я не могу использовать опции/f для registermodule.exe у установщика океана. – Web

Смежные вопросы