什么是 Windows 运行时错误以及如何修复它们?


Windows 中的运行时错误 与操作系统本身一样古老。这是应用程序崩溃时常见的错误消息,但运行时错误到底是什么?您可以采取什么措施?

软件开发非常复杂,现代应用程序依赖复杂的库和支持数据才能按预期工作。本指南将帮助您了解运行时错误发生的原因以及如何最大限度地减少错误。

什么是运行时错误?

术语“运行时错误”是指程序执行时出现的任何应用程序错误。换句话说,它发生在正在运行的程序上。这与程序编译时发生的错误形成对比。编译是获取编程代码(“源”代码)并将其转换为可由操作系统激发的二进制代码的过程。如果源代码的任何部分无效,编译器将停止并给出错误消息。

当编译后的可执行文件遇到不知道下一步该做什么或某些因素干扰其正常运行的情况时,就会发生运行时错误。此时,它将认输并给出运行时错误。

不同类型的运行时错误

由于运行时错误的定义如此广泛,因此对其进行故障排除可能很棘手。它有助于了解您可能遇到的常见错误类型。下面的五种错误类型并不详尽,但是最有可能的罪魁祸首。

逻辑错误

当计算机确实遇到“不计算 ”的情况时,就会发生逻辑错误。它是由程序代码生成的输出,会产生意外的结果,有时甚至是不可能的结果,因为代码的逻辑无法跟踪,或者程序员没有预料到一组特定的条件或输入。

内存泄漏

当程序不再需要它所请求的内存时,就会发生内存泄漏。随着时间的推移,内存泄漏为其他程序留下的资源越来越少,导致性能下降,最终导致运行时错误。这是一件有趣的事情,因为报告运行时错误的软件通常不是内存泄漏的软件。它只是泄密事件的受害者。.

除以零

除以零是不可能的,所以当你的计算机试图除以零时,它就会内爆成黑洞。只是在开玩笑!它将导致程序崩溃,并出现类似“无法除以零”的运行时错误。

未定义的对象

此错误通常与 Java 和 JavaScript 相关,其中变量尚未赋值或尚未声明。换句话说,变量中没有数据,或者代码引用了不存在的变量。基本上,程序员在某种程度上搞砸了。

IO 错误

当程序尝试从存储设备读取或写入数据但失败时,就会发生 IO 或输入/输出错误。这可能有多种原因,从驱动器断开连接到硬盘驱动器或 USB 硬件故障。光盘划伤是 IO 错误的另一个常见原因。

如何修复运行时错误

所以你遇到了运行时错误,这让你很沮丧,因为你正试图完成任务。虽然我们上面提到运行时错误有不同的种类,并且特定的错误可能会提示您是哪种类型,但无论细节如何,有一些通用修复程序可能会起作用。

重新启动计算机

重新启动计算机可能会解决内存泄漏问题或清除任何临时数据缓存或可能导致程序停止的其他工作数据。如果问题在重新启动后消失,这无助于查明原因,但对于偶尔出现的问题,重新启动是一种可以尝试的快速解决方案。

更新应用程序

软件中的运行时错误通常是由软件本身的错误引起的。一旦软件开发人员意识到这些错误,他们通常会修复问题并发布应用程序的更新。因此,您应该做的第一件事就是检查您的软件是否有可用的更新。

也许更重要的是,当您遇到 Windows 运行时错误时,应该向开发人员报告。有时,错误消息旁边会有一个报告按钮;有时,您可能需要截取屏幕截图或记下错误代码,然后通过电子邮件或社交媒体联系。报告新错误可以加快修复速度。.

更新Windows

运行时错误也可能是由于 Microsoft Windows 本身的错误或其他问题造成的,这些问题通常可以在 Windows 更新中得到纠正。小问题通常在“修补程序”中解决,这些修补程序是解决特定紧急问题的小更新。

或者,如果程序在 Windows 更新后不久就开始出现运行时错误,您可能需要 删除最后一次更新 直到开发人员更新其软件。

更新过时的驱动程序

驱动程序是让操作系统控制硬件的软件,例如显示适配器(也称为显卡)。新软件或新更新的软件可能依赖于仅存在于最新版本的驱动程序中的功能,因此当您更新驱动程序 您的计算机组件时,您可能会修复与硬件相关的运行时错误。

重新安装或修复应用程序

运行时错误可能是由于应用程序文件或数据损坏造成的。因此,当程序可执行文件尝试访问它需要工作的数据时,它会遇到错误,因为数据错误或丢失。

通过卸载应用程序并重新安装,您可以使用新副本覆盖损坏的数据。您可能不必先卸载该应用程序。当您再次运行安装程序或尝试从控制面板的程序和功能部分卸载 它们时,许多应用程序将提供“修复”或“验证”选项。

关闭所有其他应用程序

由于内存泄漏或特定应用程序需要的内存超过可用内存而导致的运行时错误可以通过关闭所有打开的非必要程序来缓解。您可能还需要调整交换文件的大小,以便为不适合 RAM 的应用程序创造更多的喘息空间。

如果您确定运行时错误是由内存容量而不是内存泄漏引起的,您还可以考虑升级计算机中的 RAM 量以处理较重的工作负载。

以安全模式运行 Windows 或执行干净启动

如果您怀疑遇到的运行时错误是后台驱动程序或其他软件应用程序造成的,您可以使用安全模式或干净启动来确认。.

安全模式是 Windows 中的一种特殊启动模式,仅加载最少的驱动程序和 Windows 服务。如果问题在安全模式下消失,您可以相当确定问题与驱动程序相关(更新它们)或 Windows 服务。请参阅我们关于 如何以安全模式启动 的指南,看看是否有帮助。如果是这样,您可能需要尝试在 MSConfig 服务选项卡 中禁用服务。

干净启动几乎与安全模式相反。 Windows 不会加载最小的操作系统,而是禁用所有第三方启动软件。如果干净启动解决了运行时错误,则可能是需要禁用、更新或替换第三方应用程序。请参阅我们的如何执行干净启动 指南。

更新运行时组件

软件通常依赖于共享软件库和标准软件运行时组件。如果这些未安装、已损坏或版本错误,则可能会导致问题。此类运行时组件的示例包括Microsoft Visual C++ 可再发行组件包

您可以从 Microsoft 网站下载所需的 VC++ 可再发行组件,但它通常包含在需要它的软件中。因此,重新安装或修复应用程序也应该恢复 Visual C++ 运行时库。这是最容易识别的运行时组件问题之一,因为运行时错误消息通常会指定它是“C++ 运行时错误”。

检查损坏的文件

当组成文件的 1 和 0 由于某种原因被损坏或覆盖时,就会发生数据损坏。系统或应用程序文件损坏可能会导致意外的运行时错误。

您可以运行Windows系统文件检查器 (SFC)来检查和修复系统文件的损坏。对于应用程序,大多数情况下,如果您在不先卸载应用程序的情况下运行它,安装程序将有一个“修复”选项。使用蒸汽 等软件客户端,您还可以使用游戏上的“验证”选项来检查文件是否仍然完整。

执行恶意软件扫描

许多类型的恶意软件会将自身注入到正在运行的代码中、损坏数据文件或更改可执行文件。所有这些都可能导致运行时错误。要排除恶意软件是导致错误的原因,请使用您最喜欢的防病毒或反恶意软件运行扫描。.

执行内存测试

在运行的软件到达 CPU 进行处理之前,它会在 RAM 中停止。如果您的 RAM 有故障,可能会导致难以追踪的运行时错误。运行记忆测试 并确保这不是内存模块中位翻转的问题!

.

相关文章:


15.11.2022