对于我正在研究的项目,我需要解决一个数学模型。我选择使用Microsoft.Solver.Foundation和SolverFoundation.Plugin.LpSolve插件执行此操作。这些扩展的两个关联的.dll文件似乎都运行正常,因为VS2015可以正常识别和引用它们并编译并运行我的程序而没有错误。
然而,直到我尝试实际解决我的优化,需要“lpsolve55.dll”才能工作。我已下载此dll并将其放在我的项目的bin / Debug文件夹中,但由于某种原因,VS2015无法识别它。即。
所以基本上,在发现上述内容之后(在尝试最常见的互联网解决方案之后),在尝试解决优化问题时,我仍然对收到错误消息感到非常不满 -
无法加载DLL'lpsolve55.dll':找不到指定的模块。 (HRESULT异常:0x8007007E)
奇怪的部分也是我有另一个项目,我解决了类似的问题,使用lpsolve55.dll完全没有任何问题....
一些简单的事实:
因此,我的问题是你们中的一些人是否遇到过类似的问题,以及你们是否能够以某种方式解决问题。
非常感谢!
答案 0 :(得分:0)
经过仔细分析后,我找到了问题的答案。说实话,就像大多数事情一样,最终它很简单。 lpsolve55.dll无法识别,因为我在路径中没有我的新bin文件夹,这与我的旧项目有关。我忘记了。
另外需要注意的是,在将lpsolve55.dll目录添加到路径后,我仍然收到错误,告诉我没有找到可以解决我的指令的模型。由于我在调用LPSolverDirective()时发生了错误,因此一些研究让我进入了以下页面:
http://lpsolve.sourceforge.net/5.5/MSF.htm
上面的页面提供了一个完整而稳定的方法,可以直接使用Microsoft.Solver.Foundation.dll中的LPSolverPlugin来访问lpsolve55.dll。在跟踪涉及编辑项目的bin / Debug和bin / Release文件夹的链接中的方法之后,我在没有时间内启动并运行了LP模型。
故事的士气 - 阅读文档。我是编程整个多项目解决方案和使用自定义添加的dll的初学者,但希望这有助于其他人体验相同的东西。最后,我通过简单地尝试不同的方法来学习它,因此没有浪费时间。