我有一个项目,它引用Slb.License作为Ocean2010许可。我在和彼得雷2010.1作战。
在运行>Petrel 2010.1 (2010.2.2)的机器上安装插件后,我使用registermodule.exe注册模块。除许可证模块外,所有模块都正确注册,该模块具有对Slb.License的引用。
RegisterModule.exe给出了一个错误:“无法加载指定的模块。原因:无法加载文件或程序集‘Slb.License、Version=2009.1.4.32700、Culture=neutral、PublicKeyToken=05cb3974809 3345b’或其依赖项之一。所定位的程序集的清单定义与程序集引用不匹配。( HRESULT: 0x80131040除外)
错误中的版本2009.1.4.32700是Slb.License的版本,它与我正在构建的Petrel 2010.1一起打包。与Petrel2010.2.2打包的Slb.License版本为2010.1.5.21635。
有什么想法吗?如果我手动将我的许可模块添加到Petrel.exe.config中,我的插件将正确加载并正常工作。它的RegisterModule.exe,我有问题。
谢谢。
编辑
这在以前的构建中是可行的,但不确定具体如何实现。
发布于 2011-12-21 08:32:09
你可以检查:
<assemblyIdentity name="Slb.License" publicKeyToken="05cb39748093345b" culture="neutral" />
<bindingRedirect oldVersion="2009.1.4.32700-2010.1.4.63024" newVersion="2010.1.5.21635" />那里
中只有1份Slb.License.dll
作为解决办法,您可以使用/f选项来忽略任何错误并注册您的模块。
https://stackoverflow.com/questions/8567321
复制相似问题