Windows의 런타임 오류(Runtime errors in Windows) 는 운영 체제 자체만큼 오래되었습니다. 앱이 충돌할 때 표시되는 일반적인 오류 메시지이지만 런타임 오류가 정확히 무엇이며 이에 대해 무엇을 할 수 있습니까?
소프트웨어(Software) 개발은 복잡하며 최신 애플리케이션은 예상대로 작동하기 위해 정교한 라이브러리와 지원 데이터에 의존합니다. 이 가이드는 런타임 오류가 발생하는 이유와 오류를 최소화하는 방법을 이해하는 데 도움이 됩니다.

런타임 오류란 무엇입니까?
"런타임 오류"라는 용어는 프로그램이 실행될 때 발생하는 모든 응용 프로그램 오류를 의미합니다. 즉, 실행 중인 프로그램에서 발생합니다. 이는 프로그램을 컴파일할 때 발생하는 오류와 대조됩니다. 컴파일은 프로그래밍 코드("소스" 코드)를 가져와 운영 체제에서 사용할 수 있는 이진 코드로 변환하는 프로세스입니다. 소스 코드의 일부가 유효하지 않으면 컴파일러가 중지되고 오류 메시지가 표시됩니다.
런타임 오류는 컴파일된 실행 파일이 다음에 무엇을 해야할지 모르거나 무언가 정상적인 작동을 방해하는 상황에 직면할 때 발생합니다. 이 시점에서 수건을 던지고 런타임 오류가 발생합니다.
다른 유형의 런타임 오류
런타임 오류는 매우 광범위하게 정의되기 때문에 문제 해결이 까다로울 수 있습니다. 발생할 수 있는 일반적인 유형의 오류를 이해하는 데 도움이 됩니다. 아래의 다섯 가지 오류 유형은 완전하지는 않지만 가장 가능성이 높은 원인입니다.
논리 오류

논리 오류는 컴퓨터가 문자 그대로 " 계산하지 않는(does not compute) " 무언가를 만났을 때 발생합니다 . 코드의 논리가 추적되지 않거나 프로그래머가 특정 조건이나 입력 집합을 예상하지 않았기 때문에 예기치 않은 결과, 때로는 불가능한 결과를 생성하는 프로그램 코드에 의해 생성된 출력입니다.
메모리 누수
메모리 누수는 프로그램이 더 이상 필요하지 않은 후에 요청한 메모리를 반환하지 않을 때 발생합니다. 시간이 지남에 따라 메모리 누수는 다른 프로그램에 대한 리소스를 점점 더 적게 남겨두므로 성능이 저하되고 결국 런타임 오류가 발생합니다. 런타임 오류를 보고하는 소프트웨어는 일반적으로 메모리 누수가 있는 소프트웨어가 아니기 때문에 이것은 흥미로운 것입니다. 유출의 피해자일 뿐입니다.
0으로 나누기

0으로 나누는 것은 불가능하므로 컴퓨터가 시도할 때 블랙홀로 폭발합니다. 농담(Just) 이야! "0으로 나눌 수 없습니다."라는 줄을 따라 런타임 오류로 프로그램이 충돌합니다.
정의되지 않은 개체

이 오류는 일반적으로 값이 할당되지 않았거나 선언되지 않은 변수가 있는 Java 및 JavaScript 와 관련이 있습니다. (JavaScript)즉, 변수에 데이터가 없거나 코드가 존재하지 않는 변수를 참조합니다. 기본적으로(Basically) 프로그래머는 어떤 식으로든 엉망이 되었습니다.
IO 오류

IO 또는 Input/Output 오류는 프로그램이 저장 장치에서 데이터를 읽거나 쓰려고 시도하다가 실패할 때 발생합니다. 연결이 끊긴 드라이브에서 결함이 있는 하드 드라이브 또는 USB(USB) 하드웨어 에 이르기까지 다양한 이유가 있을 수 있습니다 . 긁힌(Scratched) 광 디스크는 IO 오류의 또 다른 일반적인 원인입니다.
런타임 오류를 수정하는 방법
따라서 런타임 오류가 발생했으며 작업을 완료하려고 하기 때문에 당황하고 있습니다. 런타임 오류는 다양한 종류가 있으며 특정 오류는 유형에 대한 단서가 될 수 있지만 세부 사항에 관계없이 작동할 수 있는 몇 가지 일반적인 수정 사항이 있습니다.
컴퓨터 재부팅
컴퓨터를 재부팅하면 메모리 누수 문제가 해결되거나 임시 데이터 캐시 또는 프로그램 중지의 원인이 될 수 있는 기타 작업 데이터가 지워질 수 있습니다. 재부팅 후 문제가 사라지면 원인을 해결하는 데 도움이 되지 않지만 가끔 발생하는 문제의 경우 다시 시작하는 것이 빠른 해결 방법입니다.
애플리케이션 업데이트
종종 소프트웨어의 런타임 오류는 소프트웨어 자체의 버그로 인해 발생합니다. 소프트웨어 개발자가 이러한 버그를 알게 되면 일반적으로 문제를 수정하고 응용 프로그램에 대한 업데이트를 릴리스합니다. 따라서 가장 먼저 해야 할 일 중 하나는 소프트웨어 업데이트가 있는지 확인하는 것입니다.
아마도 더 중요한 것은 Windows 런타임 오류가 발생하면 개발자에게 보고해야 한다는 것입니다. 때때로 오류 메시지 옆에 보고 버튼이 있습니다. 다른 경우에는 스크린샷을 찍거나 오류 코드를 기록한 다음 이메일이나 소셜 미디어를 통해 연락해야 할 수 있습니다. 새로운 버그를 보고하면 수정하는 속도를 높일 수 있습니다.
윈도우 업데이트
런타임 오류는 Microsoft Windows(Microsoft Windows) 자체 의 버그 또는 기타 문제로 인해 발생할 수도 있으며 Windows 업데이트 에서 종종 수정 됩니다. 작은 문제는 일반적으로 특정한 긴급한 문제를 수정하는 작은 업데이트인 "핫픽스"에서 해결됩니다.
또는 Windows(Windows) 업데이트 직후 프로그램에서 런타임 오류가 발생하기 시작한 경우 개발자가 소프트웨어를 업데이트할 때까지
마지막 업데이트를 삭제할 수 있습니다.(delete the last update)
오래된 드라이버 업데이트

드라이버는 운영 체제가 디스플레이 어댑터( 일명(AKA) 그래픽 카드)와 같은 하드웨어를 제어할 수 있게 해주는 소프트웨어입니다. 새(New) 소프트웨어 또는 새로 업데이트된 소프트웨어는 최신 버전의 드라이버에만 있는 기능에 의존할 수 있으므로 컴퓨터 구성 요소용
드라이버를 업데이트 할 때 하드웨어 관련 런타임 오류를 수정할 수 있습니다.(update drivers)
애플리케이션 재설치 또는 복구
런타임 오류는 손상된 애플리케이션 파일 또는 데이터의 결과일 수 있습니다. 따라서 프로그램 실행 파일이 작동에 필요한 데이터에 액세스하려고 하면 해당 데이터가 잘못되었거나 누락되었기 때문에 오류가 발생합니다.

응용 프로그램을 제거하고 다시 설치하면 손상된 데이터를 새 복사본으로 덮어쓸 수 있습니다. 먼저 응용 프로그램을 제거하지 않아도 됩니다. 많은 앱은 설치 프로그램을 다시 실행하거나 제어판 의 (Control Panel)프로그램(Programs) 및 기능(Features) 섹션 에서 제거(uninstall) 하려고 할 때 "복구" 또는 "확인" 옵션을 제공합니다 .
다른 모든 앱 닫기
메모리 누수로 인해 발생하거나 특정 앱에 사용 가능한 것보다 더 많은 메모리가 필요하기 때문에 발생하는 런타임 오류는 열려 있는 불필요한 프로그램을 닫음으로써 완화할 수 있습니다. 또한 스왑 파일의 크기를 조정하여 RAM(RAM) 에 맞지 않는 앱을 위한 여유 공간을 만들 수도 있습니다 .
런타임 오류가 메모리 누수 때문이 아니라 메모리 용량 때문이라고 확신하는 경우 컴퓨터의 RAM 용량을 업그레이드하여 무거운 워크로드를 처리할 수도 있습니다.
(Run Windows)안전 모드(Safe Mode) 에서 Windows 실행 또는 클린 부팅 수행(Boot)
발생한 런타임 오류가 백그라운드에 있는 드라이버 또는 기타 소프트웨어 응용 프로그램의 결과라고 의심되는 경우 안전 모드(Mode) 또는 클린 부팅을 사용하여 확인할 수 있습니다.

안전 모드 는 최소한의 드라이버와 (Safe Mode)Windows 서비스 만 로드하는 Windows 의 특수 부팅 모드입니다 . 안전 모드(Safe Mode) 에서 문제가 사라지면 문제가 드라이버 관련(업데이트) 또는 Windows 서비스인지 상당히 확신할 수 있습니다. 안전 모드에서 시작하는 방법(how to start up in Safe Mode) 에 대한 가이드를 참조하여 도움이 되는지 확인하세요. 그렇다면 MSConfig 서비스 탭(MSConfig services tab) 에서 서비스 비활성화를 실험해 볼 수 있습니다 .
클린 부팅은 안전 모드(Safe Mode) 와 거의 반대입니다 . Windows 는 최소 운영 체제를 로드하는 대신(Rather) 모든 타사 시작 소프트웨어를 비활성화합니다. 클린 부팅으로 런타임 오류가 해결되면 비활성화, 업데이트 또는 교체가 필요한 타사 앱일 수 있습니다. 클린 부팅을 수행하는 방법(how to perform a clean boot) 에 대한 가이드를 참조하십시오 .
런타임 구성 요소 업데이트
소프트웨어(Software) 는 종종 공유 소프트웨어 라이브러리 및 표준 소프트웨어 런타임 구성 요소에 의존합니다. 설치되지 않았거나 손상되었거나 버전이 잘못된 경우 문제가 발생할 수 있습니다. 이러한 런타임 구성 요소의 예로는 Microsoft Visual C++ redistributable package 가 있습니다.

Microsoft 웹 사이트 에서 필수 VC++ 재배포 가능 패키지를 다운로드할 수 있지만 일반적으로 이를 필요로 하는 소프트웨어에 포함되어 있습니다. 따라서 앱을 다시 설치하거나 복구하면 Visual C++ 런타임 라이브러리도 복원되어야 합니다. 런타임 오류 메시지는 일반적으로 "C++ 런타임 오류"라고 지정하기 때문에 식별하기 가장 쉬운 런타임 구성 요소 문제 중 하나입니다.
손상된 파일 확인
데이터(Data) 손상은 파일을 구성하는 1과 0이 어떤 이유로 손상되거나 덮어쓰여질 때 발생합니다. 시스템 또는 애플리케이션 파일이 손상되면 예기치 않은 런타임 오류가 발생할 수 있습니다.

Windows 시스템 파일 검사기(Windows System File Checker) ( SFC )를 실행하여 시스템 파일의 손상을 확인하고 복구할 수 있습니다. 응용 프로그램의 경우 먼저 앱을 제거하지 않고 실행하면 대부분의 경우 설치 프로그램에 "복구" 옵션이 있습니다. Steam 과 같은 소프트웨어 클라이언트 를 사용하면 게임에서 "확인" 옵션을 사용하여 파일이 여전히 전체인지 확인할 수도 있습니다.
맬웨어 검사 수행
많은 유형의 맬웨어가 실행 중인 코드에 자신을 주입하거나 데이터 파일을 손상시키거나 실행 파일을 변경합니다. 이 모든 것이 런타임 오류로 이어질 수 있습니다. 오류가 발생하는 원인으로 맬웨어를 배제하려면 선호하는 바이러스 백신 또는 맬웨어 방지 소프트웨어를 사용하여 검사를 실행하십시오.
메모리 테스트 수행

실행 중인 소프트웨어가 처리를 위해 CPU 에 도달하기 전에 (CPU)RAM 에서 멈춥니다 . RAM 에 결함이 있는 경우 추적하기 어려운 런타임 오류가 발생할 수 있습니다. 메모리 테스트(memory test) 를 실행하고 메모리 모듈에서 비트가 뒤집히는 문제가 아닌지 확인하십시오!
What Are Windows Runtime Errors and How Do You Fix Them?
Runtime errors in Windows are as old as the operating system itself. It’s a common error message to see when an app crashes, but what exactly is a runtime error, and what can you do about it?
Software development is complex, and modern applications rely on sophisticated libraries and supporting data to work as expected. This guide will help you understand why runtime errors happen and how to minimize them.

What Is a Runtime Error?
The term “runtime error” refers to any application error when a program is executed. In other words, it happens to a running program. This is in contrast to errors that happen when a program is compiling. Compilation is the process of taking programming code (the “source” code) and converting it to binary code that can be excited by the operating system. If any part of the source code is invalid, the compiler will stop and give an error message.
Runtime errors happen when the compiled executable encounters a situation where it doesn’t know what to do next or something interferes with its normal operation. At this point, it will throw in the towel and give a runtime error.
Different Types of Runtime Error
Because runtime errors are defined so broadly, troubleshooting them can be tricky. It helps to understand what common types of error you may encounter. The five error types below are not exhaustive but are the most likely culprits.
Logic Errors

Logic errors happen when the computer literally encounters something that “does not compute.” It’s an output generated by the program’s code that produces an unexpected result, sometimes an impossible one, because the logic of the code doesn’t track or the programmers did not anticipate a specific set of conditions or inputs.
Memory Leaks
A memory leak happens when a program doesn’t give back memory that it requested after it no longer needs it. Over time memory leaks leave fewer and fewer resources for other programs, leading to degraded performance and, eventually, runtime errors. This is an interesting one because the software that reports a runtime error is usually not the one with a memory leak. It’s just a victim of the leak.
Dividing by Zero

It’s impossible to divide by zero, so when your computer tries to, it implodes into a black hole. Just kidding! It will crash the program with a runtime error along the lines of “cannot divide by zero.”
Undefined Objects

This error is usually associated with Java and JavaScript, where variables that have not been assigned a value or haven’t been declared. In other words, there’s no data in a variable, or the code refers to a variable that doesn’t exist. Basically, the programmer messed up in some way.
IO Errors

IO or Input/Output errors happen when a program tries to read or write data from a storage device and fails. This can be for various reasons, from a disconnected drive to a faulty hard drive or USB hardware. Scratched optical discs are another common cause of IO errors.
How to Fix Runtime Errors
So you’ve encountered a runtime error, and it’s bumming you out because you’re trying to get things done. While we’ve mentioned above that runtime errors come in different varieties, and specific errors may clue you into which type, there are some general fixes that may work regardless of the details.
Reboot Your Computer
Rebooting your computer may solve memory leak issues or clear out any temporary data caches or other working data that may have caused a program to stop. If an issue goes away after a reboot, it doesn’t help clear up the cause, but for occasional problems, a restart is a fast solution to try.
Update The Application
More often than not, runtime errors in software result from bugs in the software itself. Once a software developer is aware of these bugs, they’ll usually fix the problem and release an update for the application. So one of the first things you should do is check whether an update for your software is available.
Perhaps more importantly, when you encounter a Windows runtime error, you should report it to the developers. Sometimes there’s a reporting button alongside the error message; at other times you may have to take a screenshot or write down an error code and then get in touch via email or social media. Reporting a new bug can speed up getting a fix.
Update Windows
Runtime errors can also be due to bugs or other issues in Microsoft Windows itself, which are often rectified in Windows updates. Small issues are usually addressed in “hotfixes” which are small updates that fix specific urgent problems.
Alternatively, if a program has started giving runtime errors shortly after a Windows update, you may want to delete the last update until the developers update their software.
Update Your Outdated Drivers

Drivers are software that let the operating system control your hardware, such as the display adapter (AKA your graphics card). New software or newly-updated software may rely on features that only exist in the latest version of the driver, so when you update drivers for your computer components, you might fix hardware-related runtime errors.
Reinstall or Repair The Application
Runtime errors can be the result of corrupted application files or data. So when the program executable tries to access data it needs to work, it runs into errors because that data is wrong or missing.

By uninstalling the application and reinstalling it, you can overwrite that corrupt data with a fresh copy. You may not have to uninstall the application first. Many apps will offer a “repair” or “verify” option when you either run the installer again or try to uninstall them from the Programs and Features section of the Control Panel.
Close All Other Apps
Runtime errors that are caused by memory leaks or because a particular app needs more memory than is available can be mitigated by closing any nonessential programs that are open. You may also want to adjust the size of your swap file, to create a little more breathing room for apps that don’t fit into RAM.
If you’re sure that runtime errors are caused by memory capacity and not by a memory leak, you can also consider upgrading the amount of RAM in your computer to handle those heavier workloads.
Run Windows in Safe Mode or Perform a Clean Boot
If you suspect the runtime errors that you’re experiencing are the result of drivers or other software applications in the background, you can use either Safe Mode or a clean boot to confirm it.

Safe Mode is a special boot mode in Windows that only loads minimal drivers and Windows services. If the problem goes away under Safe Mode, you can be fairly certain the issue is either driver-related (update them) or a Windows service. Refer to our guide on how to start up in Safe Mode to see if it helps. If it does, you may want to experiment with disabling services in the MSConfig services tab.
A clean boot is almost the opposite of Safe Mode. Rather than loading a minimal operating system, Windows disables all third-party startup software. If a clean boot resolves the runtime error, it’s likely a third-party app that needs to be disabled, updated, or replaced. Refer to our guide on how to perform a clean boot.
Update Runtime Components
Software often depends on shared software libraries and standard software runtime components. If these are not installed, are corrupted, or are the wrong version it can cause issues. Examples of such runtime components include the Microsoft Visual C++ redistributable package.

You can download the required VC++ redistributable from the Microsoft website, but it’s usually included with the software that needs it. So reinstalling or repairing the app should also restore the Visual C++ runtime library. This is one of the easiest runtime component problems to identify, because the runtime error message will usually specify that it’s a “C++ runtime error.”
Check For Corrupt Files
Data corruption happens when the ones and zeros that make up a file are damaged or overwritten for some reason. Damage to system or application files can lead to unexpected runtime errors.

You can run the Windows System File Checker (SFC) to check and repair damage to system files. For applications, most of the time the installer will have a “repair” option if you run it without uninstalling the app first. With software clients such as Steam, you can also use the “verify” option on your games to check that the files are still whole.
Perform a Malware Scan
Many types of malware inject themselves into running code, corrupt data files, or alter executable files. All of which can lead to runtime errors. To rule out malware as the reason you’re getting errors, run a scan using your favorite antivirus or antimalware software.
Perform A Memory Test

Before your running software gets to your CPU for processing, it stops over in your RAM. If your RAM is faulty, this may cause runtime errors that are hard to track down. Run a memory test and make sure it’s not an issue with bits getting flipped in your memory modules!