我想每个人都会偶尔碰到缺失的问题。 我想要得到的是“推荐”的方法来查找和安装DLL的。 使用depends.exe找出哪些DLL丢失是很容易的。
不再使用depends.exe,它没有跟上Windows核心和像并行缓存这样的部署策略的发展。 试图解决它给出的警告将实际上弄糟你的机器很糟糕。 如果程序实际上无法启动,只能用它来提示。
我倾向于遇到的99%的缺少DLL错误是缺少C ++运行时库(例如= MSVC * .dll =)或.Net框架,开发人员已经建立了动态链接到C ++运行时但尚未创建一个带有所需合并模块的安装程序,或者他们已经构建了一个调试版本,该版本链接到您不允许重新分发的调试运行时库。
在绝大多数情况下,只需安装正确的Visual Studio 2005/2008 C ++运行时(例如,请参阅此处 )或.Net框架即可解决此问题。
这很大程度上取决于哪些DLL丢失,为什么丢失,我不知道有一个通用的答案。
我的建议是使用依赖来找出哪些DLL丢失,试图找出这些DLL应该安装在哪里(以及应该安装什么应用程序),然后尝试重新安装该应用程序或找出发生了什么搞砸了dll。
另一个要检查的是32位/ 64位不匹配,这可能使DLL看起来像有时丢失,特别是在64位平台上。
或者,如果您使用的是.NET,则有时可能会遇到汇编版本和GAC的问题。
你也可以检查PATH环境变量,我建议不要盲目添加你的PATH,以便找到你想要的DLL,这可能会导致各种其他奇怪的问题。
有时你必须用PATH或复制文件来解决问题,但是通常情况下,如果能够找出问题出在哪里并解决问题通常会更好。
如果可能,请从发布者的网站获取DLL,然后按照发布者的指示进行安装。 不要忘记尊重许可规则!