title: DLL-lose
date: 2019-11-21 15:55:47
description: 解决计算机程序中出现.DLL文件丢失的问题

  在安装某些软件,我们正准备开开心心地打开,哦豁,duang的一声弹出一个框框。就像下面这样

这时候是不是一筹莫展呢?别灰心,这类问题大多数还是能解决的。

1. DLL文件的概念

1.1 什么是dll文件

  DLL(Dynamic Link Library)文件为动态链接库文件,又称“应用程序拓展”,是软件文件类型。在Windows中,许多应用程序并不是一个完整的可执行文件,它们被分割成一些相对独立的动态链接库,即DLL文件,放置于系统中。当我们执行某一个程序时,相应的DLL文件就会被调用。一个应用程序可使用多个DLL文件,一个DLL文件也可能被不同的应用程序使用,这样的DLL文件被称为共享DLL文件。

  在 Windows操作系统中,每个程序都可以使用该 DLL 中包含的功能来实现“打开”对话框。

  DLL文件中存放的是各类程序的函数(子过程)实现过程,当程序需要调用函数时需要先载入DLL,然后取得函数的地址,最后进行调用。使用DLL文件的好处是程序不需要在运行之初加载所有代码,只有在程序需要某个函数的时候才从DLL中取出。这有助于促进代码重用和内存的有效使用。

1.2 使用dll文件的好处

  • 实现模块化

  通过使用 DLL,程序可以实现模块化,由相对独立的组件组成。例如,一个记账程序可以按模块来销售。可以在运行时将各个模块加载到主程序中(如果安装了相应模块)。因为模块是彼此独立的,所以程序的加载速度更快,而且模块只在相应的功能被请求时才加载。另外,使用DLL文件还可以减小程序的体积。

  • 便于应用更新

  可以更为容易地将更新应用于各个模块,而不会影响该程序的其他部分。例如,您可能具有一个工资计算程序,而税率每年都会更改。当这些更改被隔离到 DLL 中以后,您无需重新生成或安装整个程序就可以应用更新。

2. dll文件丢失的解决办法

  当某个程序或 DLL 使用其他 DLL 中的 DLL 函数时,就会创建依赖项。因此,该程序就不再是独立的,并且如果该依赖项被损坏,该程序就可能遇到问题。就会产生类似于.dll文件丢失这样的问题。

2.1 dll文件丢失的原因

  出现DLL文件丢失一般出现在Windows系统中。产生dll文件丢失的原因有很多。大概总结了一下,有以下的几种:
(1)程序依赖的 DLL文件升级到新版本
(2)未安装程序需要的DLL文件
(3)依赖 DLL 被其早期版本覆盖
(4)从计算机中删除了依赖 DLL
(5)由dll文件命名引发的丢失

2.2 解决办法

  解决dll丢失问题的方法有一下几种,不过并不是所有的解决方法都能解决问题。在选择解决问题的方法之前先找到产生丢失dll的具体原因是什么,还有丢失的dll文件是什么类型的。然后再对症下药,方能药到病除。

丢失文件的类型:

  丢失的dll文件是与编程语言和系统环境有关的dll文件。一般出现在microsoft自己的软件运行时出现,比如许多微软自己开发的开发工具,VS ,vc++,Qt之类的程序,可能的原因是(1)(2)(3)(4)。

  丢失的dll文件是与具体程序相关的,非microsoft相关的,一般出现在一个刚安装的程序或者不需要安装可以直接运行的exe文件运行时出现的。还有就是网上下载的所谓的破解版的软件最容易出现这种问题。出现的原因可能是(2)(4)。

解决方法:

方法1:下载一键式修复工具

  有许多人开发了专门针对这类dll丢失问题的一键式修复工具。如 Diretx工具

  这是一个一键批量检测当前系统丢失的dll文件并进行自动修复,使用方法是最简单的。只能解决第一类问题中的少部分问题,可以用来修复那些系统相关的dll文件。使用方法

方法2:下载丢失的对应的DLL文件并放到对应的目录

  将dll文件复制到Windows系统目录或者复制到程序安装目录中。针对报丢失的dll文件,按照名字去搜索对应的DLL文件下载,并放置在对应的目录。一般第一类的问题,和系统相关的dll文件放在系统对应的目录下。(32位系统在 C:\Windows\System32,64位系统放在C:\Windows\SysWOW64下)和程序相关的放在对应程序安装目录下。一般是这样,但是也不是绝对的,也有的程序丢失的dll放在系统目录下的,比如有的.exe程序。

  下面给出一些可以搜索下载dll文件的网址:

  • Dll-files
  • https://www.zhaodll.com/
  • Dll之家
  • 脚本之家
  • DLL文件下载器或者https://gitee.com/wyatthuang/dll_downloader

  这个是一个爬取工具。原理是通过Python的urllib库,爬取DLL共享网站https://cn.dll-files.com, 并下载dll文件。
软件运行后,按照提示提示搜索下载就可以了,非常很简单。

方法3:在对应的目录检查一下文件命名的问题

  这个问题一般不会出现,一般由于自己下载的dll文件已经放在对应目录下但是由于命名的原因没有识别到。

方法4:重新安装程序

  重新执行出现问题程序的安装程序,重新安装来解决dll丢失问题。不过对于系统dll文件丢失和.exe程序没有作用。

方法5:使用Windows系统文件检查器修复.dll错误(sfc / scannow)

https://www.reneelab.com.cn/windows-10-sfc-scannow.html

方法6:重启大法

  在使用多种方法不起效或者使用重装大法之前,可以使用重启系统试试。重启可以让没启用的配置生效,或许可以解决你的问题。

方法7:通过重装或者更新Windows操作系统来摆脱dll错误

  这个方法成本太大了,不建议使用

一般来说,大多数问题通过这些方法都是可以解决的。如果还有的话,请留言告诉我一声。哈哈

多种方法解决计算机程序中出现.DLL文件丢失的问题相关推荐

  1. 解决Windows中d3dx9_39.dll文件丢失

    其实很多用户玩单机游戏或者安装软件的时候就出现过这种问题,如果是新手第一时间会认为是软件或游戏出错了,其实并不是这样,其主要原因就是你电脑系统的该dll文件丢失了或者损坏了,这时你只需下载这个d3dx ...

  2. 解决Windows中mfc100.dll文件缺少问题

    其实很多用户玩单机游戏或者安装软件的时候就出现过这种问题,如果是新手第一时间会认为是软件或游戏出错了,其实并不是这样,其主要原因就是你电脑系统的该dll文件丢失了或者损坏了,这时你只需下载这个mfc1 ...

  3. 解决系统提示msvcr71.dll文件丢失的错误

    最近学习memcache,需要在windows7环境下安转mem服务,结果却报错,如下 经过度娘发现是系统缺少了必要的系统文件,也就是msvcr71.dll这个文件,下载地址:http://www.c ...

  4. dll放在unity哪个文件夹下_unity中调用dll文件总结

    unity中调用dll文件总结 根据收集的资料,对unity中调用dll文件进行总结,目前常用的两种,在给出vs中封装dll文件的步骤. 一.调用c#中的dll文件 1.1封装dll文件 首先新建一个 ...

  5. BugkuCTF_MISC——“多种方法解决”、“闪的好快”

    文章目录 使用工具 一.多种方法解决 二.闪的好快 完 使用工具 notepad++ Stegsolve 一.多种方法解决 题目是一个exe文件,双击打不开 使用notepad++查看源码 这是一张b ...

  6. 无法启动此程序 因为计算机中丢失xlive,光环2xlive.dll文件丢失的解决方法

    很多小伙伴在使用电脑玩游戏的时候,系统提示无法启动此程序,因为计算机中丢失xlive.dll.尝试重新安装此程序以解决此问题,这是怎么一回事呢?因为该文件的缺失或者没有注册导致的,具体的解决方法下面一 ...

  7. dll文件是什么语言编写的_Win7系统当中libeay32.dll文件丢失的解决方法是什么?...

    Win7系统libeay32.dll文件丢失应该如何解决?有不少用户在打开电脑运行游戏的时候却会出现"libeay32.dll文件丢失"的提示,用了很多方法却还是无法解决,那么该问 ...

  8. 电脑提示MSVCP140.dll文件丢失的解决方法

    打开软件或者游戏出现运行出现报错,提示"由于找不到 MSVCP140.dll,无法继续执行代码.重新安装程序可能会解决此问题.",这一般是什么原因导致了这个问题,我们要如何解决?下 ...

  9. 电脑程序在计算机丢失怎么办,电脑中dll文件丢失怎么恢复?计算机中丢失dll文件修复方法...

    DLL文件是Windows系统中的动态链接文件,我们在运行程序时都必须链接到dll文件,如果缺少了则无法正常运行,相信大家都会遇到dll文件缺失的情况,那么电脑中dll文件丢失怎么恢复?下面电脑知识大 ...

最新文章

  1. js去掉前后空格的函数_2020年最火爆的Vue.js面试题
  2. JavaScript初学者编程题(11)
  3. 老程序员都去哪儿了?
  4. 定时器java执行越来越晚,虽然Java是解释型语言,但随着随着(???????????)编译器技术的发展,Java程序的运行速度越来越接近于C 等编译型语言。...
  5. Source Insight 格式化
  6. matlab nurbs闭合曲面,nurbs_toolbox Matlab 非均匀有理B样条函数,能生成B 曲线和曲面 238万源代码下载- www.pudn.com...
  7. iBatis 的插入一个实体
  8. 一个很好学习Mysql网站
  9. 数据结构与算法(C++)– 队列(Queue)
  10. 三星电子第二季芯片需求大增 但手机销售疲软
  11. haproxy Starting proxy XXX: cannot bind socket
  12. 20190915:(leetcode习题)对称二叉树
  13. Vue-Access-Control:前端用户权限控制解决方案
  14. ps如何把自己的图与样机结合_样机在ps里面怎么用|ps怎么把图片放在书本样机图中...
  15. 三、Serializer序列化器
  16. 【读报告】基于物联网技术的道岔转换设备检测专家平台的研究 研制报告
  17. AN蜘蛛池V2.0附搜索留痕转码工具SEO工具
  18. Linux下gcc/g++中-I(i的大写)、-L和-l
  19. 软件检测怎么做?第三方软件检测方案模板
  20. linux 宕机 内存,Linux内存使用高,触发系统宕机

热门文章

  1. 【FPGA的基础快速入门15------DS18B20数字温度传感器】
  2. 小程序app.js的配置
  3. Maven环境配置(本文以“apache-maven-3.8.2”的安装配置为例)
  4. “华远新能源”:光伏产业链发展持续向好
  5. Excel/WPS 按条件合并多行
  6. KITTI数据集--参数
  7. android控制中心实现,基于Android平台的智能家居系统控制中心的设计与实现
  8. docker容器状态Exited(1)第一篇
  9. linux oracle 查看版本
  10. linux shell脚本编写 | 三角形 | 梯形 | 菱形 | 九九乘法表 | 矩形 | 超详细