Windows 10 또는 Windows 11에서 특정 앱을 실행하려고 할 때 “진입점을 찾을 수 없습니다”라는 오류 메시지가 계속 나타나는데, 솔직히 꽤 짜증나는 문제입니다.일반적으로 이 오류는 Windows가 DLL(공유 코드 라이브러리)을 로드하려고 시도하지만 해당 DLL 내에서 올바른 함수를 찾을 수 없을 때 발생합니다.메시지에는 종종 “동적 링크 라이브러리에서 프로시저 진입점을 찾을 수 없습니다”와 같은 내용이 표시되는데, 그럴듯하게 들리지만 실제로는 DLL 파일이 누락되었거나 손상되었거나 일치하지 않음을 나타냅니다.이는 DLL이 삭제되거나, 이동되었거나, 손상되었거나, Visual C++ 패키지와 같은 런타임 구성 요소가 일치하지 않는 경우에 발생할 수 있습니다.더 답답한 점은 앱이 실행되지 않는 이유가 항상 명확하게 드러나지 않는다는 것입니다.때로는 실수로 삭제되었거나, 보안 소프트웨어가 파일을 격리했거나, Windows 시스템 문제 때문일 수 있습니다.앱이 실행되려고 시도하다가 갑자기 닫히거나 열리지 않는 경우가 있는데, 충돌 덤프도 생성되지 않고 조용히 실패하는 것입니다.이 간편 가이드에서는 보안 소프트웨어를 일시적으로 끄는 것부터 DLL 파일을 직접 수정하는 것, Windows를 복구하거나 런타임 패키지를 재설치하는 도구 사용에 이르기까지 몇 가지 일반적인 해결 방법을 다룹니다.이 방법들 중 하나라도 도움이 되어 앱을 큰 문제 없이 다시 실행할 수 있기를 바랍니다.
Windows에서 “진입점을 찾을 수 없습니다” 오류를 해결하는 방법
해결 방법 1: Windows Defender 보호 기능을 비활성화합니다.
Windows Defender가 앱에 필요한 DLL 파일을 격리했을 경우 이 방법이 도움이 될 수 있습니다. Defender가 DLL 파일을 위험 파일로 표시하고 격리하면 해당 프로그램은 DLL 파일 내부의 함수를 호출하려다 실패하게 됩니다.따라서 실시간 보호 기능을 끄면 앱이 로드될 수 있으며, 적어도 오류인지 아닌지 확인할 수 있는 충분한 시간을 확보할 수 있습니다.다만, 보안 기능을 끄는 것은 영구적인 해결책이 아니므로, 빠른 테스트에는 유용할 수 있습니다.
- 설정을 엽니다.
- 개인정보 및 보안 (또는 일부 빌드에서는 업데이트 및 보안 ) 으로 이동하세요.
- Windows 보안을 클릭하세요.
- 바이러스 및 위협 방지 기능을 선택하세요.
- 보호 기록을 클릭 하고 격리된 파일을 찾으세요.
- DLL 파일이 격리된 것으로 의심되는 경우 마우스 오른쪽 버튼을 클릭하고 복원을 선택하십시오.
- 또는 방화벽 및 네트워크 보호 로 이동하여 네트워크 프로필(개인/공용)을 선택하고 메시지에 따라 방화벽을 일시적으로 비활성화할 수 있습니다.
- 모든 창을 닫고 앱을 다시 실행하세요.(일부 시스템에서는 이 방법만으로 문제가 해결될 수 있지만, 이후에는 반드시 보안 기능을 다시 활성화해야 합니다.)
참고: 악성코드 또는 보안 차단이 관련된 경우, 테스트가 완료된 후 정밀 검사를 수행하거나 보호 기능을 다시 활성화하는 것이 좋습니다.
해결 방법 2: 보호 기록에서 누락된 DLL 파일 복원
만약 DLL 파일이 실제로 Windows Defender에 의해 격리되었다면, 격리 목록에서 복원할 수 있습니다.이는 DLL 파일이 악성이 아니라 단순히 잘못 분류된 경우에 해당하며, 때때로 오탐이 발생하기도 합니다.
- Windows 보안을 엽니다.
- 바이러스 및 위협 방지 페이지 로 이동하세요.
- 보호 기록을 클릭하세요.
- 격리된 항목 으로 필터링합니다.
- 목록에서 앱의 DLL 파일을 찾아보세요.
- 마우스 오른쪽 버튼을 클릭하고 가능한 경우 ‘복원’을 선택하세요.
- 휴지통을 확인해 보세요.간혹 파일이 삭제되는 경우가 있는데, 휴지통에서 DLL 파일을 찾으면 복원할 수 있습니다.
보안 검사 중에 DLL 파일이 삭제된 경우라면 이 방법으로 오류를 해결할 수 있습니다.하지만 격리 폴더나 휴지통에서도 파일을 찾을 수 없다면 데이터 복구를 진행해야 합니다.
해결 방법 3: 데이터 복구 소프트웨어를 사용하여 삭제된 DLL 파일을 복구합니다.
DLL 파일이 완전히 사라진 경우(예: 수동으로 삭제했거나 시스템 정리 중에 제거된 경우), 복구 도구를 사용하면 문제를 해결할 수 있습니다.어떤 환경에서는 완벽하게 작동할 수 있지만, 다른 환경에서는 삭제된 파일이 제대로 복구되지 않거나 덮어쓰기될 수도 있습니다.하지만 해당 파일이 앱에 중요한 역할을 한다면 시도해 볼 가치가 있습니다.
- EaseUS Data Recovery Wizard 와 같은 프로그램을 다운로드하여 설치하세요.
- 프로그램을 실행하고 DLL 파일이 저장된 드라이브를 선택하십시오.
- 삭제된 파일을 검색하기 시작합니다.
- 도구가 찾은 내용을 미리 보고, 특히 앱과 관련된 DLL을 찾아보세요.
- DLL 파일을 다른 폴더(안전을 위해 원래 폴더가 아닌)에 복원하십시오.
- 그 후 DLL 파일을 원래 위치로 되돌려 놓고 앱을 다시 실행해 보세요.
이건 일종의 ‘맹검법’이지만, 가끔 효과가 있을 때도 있습니다.특히 실수로 DLL 파일을 삭제했는데 휴지통을 아직 비우지 않은 경우에 그렇습니다.
해결 방법 4: DISM 및 SFC 도구를 사용하여 Windows 파일 복구
손상된 시스템 파일도 또 다른 숨겨진 원인입니다.때때로 시스템 DLL이나 다른 Windows 구성 요소가 손상되어 앱 자체 파일에는 문제가 없더라도 앱이 제대로 작동하지 않을 수 있습니다. DISM 및 SFC를 실행하면 이러한 근본적인 문제를 해결하여 Windows가 DLL 로드를 차단하는 원인이 아닌지 확인할 수 있습니다.
- 시작 메뉴를 열고, 입력한 다음
cmd마우스 오른쪽 버튼을 클릭하고 ‘관리자 권한으로 실행’을 선택하세요. - 입력
DISM /Online /Cleanup-Image /RestoreHealth하고 누르세요 Enter. - 처리되는 데 몇 분 정도 소요될 수 있으니 기다려 주세요.
- 완료되면 입력
sfc /scannow하고 Enter 키를 누르세요 Enter. - 검사가 완료될 때까지 기다리세요.필요한 경우 손상되거나 누락된 시스템 파일을 복구해 줍니다.
- 마지막으로 PC를 재시작하고 앱이 진입점 오류 없이 실행되는지 확인하십시오.
일부 시스템에서는 이 방법으로 백그라운드에서 DLL 로드를 방해하던 지속적인 시스템 손상 문제를 해결할 수 있습니다.
해결 방법 5: 올바른 Visual C++ 재배포 가능 패키지를 설치하십시오.
때때로 DLL은 Visual C++ 재배포 패키지의 런타임 구성 요소에 의존합니다.해당 패키지가 설치되어 있지 않거나 오래된 버전인 경우 DLL은 로드되지만 앱에서 필요로 하는 기능이 누락될 수 있습니다.이 패키지를 설치하거나 업데이트하면 특히 C++로 개발된 앱에서 발생하는 진입점 누락 오류를 해결할 수 있습니다.
- Visual C++ 재배포 가능 패키지의 Microsoft 다운로드 페이지( https://aka.ms/vs/17/release/vc_redist.x64.exe )로 이동하세요.
- 최신 Windows 시스템의 경우 최신 x64 버전을 선택하고, 시스템이 32비트인 경우 x86 버전을 선택하십시오.
- 설치 프로그램을 다운로드하여 실행하세요.
- 라이선스에 동의하고 설치를 클릭하세요.
- 설치가 완료되면 재부팅하십시오.
이 단계를 통해 DLL은 로드되지만 런타임이 최신 버전이 아니어서 앱이 올바른 함수를 찾지 못하는 문제를 해결할 수 있는 경우가 많습니다.
해결 방법 6: 해당 애플리케이션을 다시 설치합니다.
다른 모든 방법이 실패하면 재설치가 앱 폴더 내의 손상되거나 누락된 파일을 복구하는 가장 빠른 방법일 수 있습니다.때때로 업데이트 또는 불완전한 제거로 인해 손상된 종속 파일이 남아 진입점 오류를 유발할 수 있습니다.
- 제어판을 열고 프로그램 및 기능 으로 이동하세요.
- 앱을 선택한 다음 제거를 클릭하세요.
- 안내에 따라 앱을 완전히 삭제하세요.
- 공식 웹사이트에서 최신 설치 프로그램을 다운로드하십시오.
- 재설치 후 오류가 계속 발생하는지 확인하십시오.
때로는 앱 파일을 새로 고치는 것만으로도 모든 것이 해결될 수 있습니다.특히 업데이트나 수동 수정 중에 파일이 손상된 경우에 그렇습니다.
요약
- DLL 파일이 격리되었는지 확인하기 위해 Windows Defender를 일시적으로 비활성화했습니다.
- 격리소 또는 휴지통에서 누락된 DLL 파일을 복원하거나 복구했습니다.
- 삭제된 DLL 파일을 복구하기 위해 데이터 복구 도구를 사용했습니다.
- DLL을 차단할 수 있는 시스템 손상을 복구하기 위해 DISM 및 SFC를 실행했습니다.
- 최신 Visual C++ 재배포 가능 패키지를 설치했습니다.
- 손상되거나 깨진 파일을 교체하기 위해 프로그램을 다시 설치했습니다.
마무리
이런 종류의 오류는 특히 시스템 문제인지, 보안 문제가 과도한 것인지, 아니면 단순히 파일 오류인지 확실하지 않을 때 골칫거리가 될 수 있습니다.위에서 설명한 해결 방법들은 DLL 격리, 파일 누락, 시스템 손상 또는 오래된 런타임과 같은 일반적인 원인들을 다룹니다. Windows에서는 이러한 문제를 해결하는 것이 간단해 보이지만, 실제로는 예상보다 더 복잡한 경우가 많아 답답할 수 있습니다.일반적으로 이러한 해결 방법 중 하나를 사용하면 앱이 다시 작동하게 되며, 경우에 따라 재부팅이나 재설치가 필요할 수 있습니다.이 가이드가 큰 어려움 없이 올바른 방향으로 안내해 주기를 바랍니다.다만, DLL 오류는 종종 더 심각한 문제의 징후이므로 시스템을 항상 건강하게 유지하고 소프트웨어를 최신 상태로 관리하는 것이 중요합니다.