본문 바로가기

생활 속 궁금증

dll 파일이란? 열리지 않는 이유와 dll 없음 오류 해결법

반응형

프로그램을 실행했더니 '○○.dll 이 없어 코드 실행을 진행할 수 없습니다' 같은 창이 뜨거나, 폴더에서 .dll 파일을 발견했는데 더블클릭해도 아무것도 안 될 때가 있습니다. dll 은 프로그램들이 함께 쓰는 부품 파일이라 혼자 열리지 않고, 없다는 오류는 대부분 공식 패키지 하나로 해결됩니다.

이 글의 숫자는 모두 이 PC(윈도우 11)에서 직접 확인한 것입니다(2026년 10월 30일).


결론부터

  • dll 은 탐색기에 '응용 프로그램 확장' 으로 보이는 파일로, 프로그램이 불러 쓰는 부품입니다. 이 PC 의 System32 폴더에만 3,504개가 있었습니다
  • 더블클릭해도 열리지 않는 게 정상입니다. 열기 명령이 등록돼 있지 않습니다
  • vcruntime140.dll·msvcp140.dll 이 없다는 오류는 마이크로소프트 Visual C++ 재배포 가능 패키지를 설치하면 됩니다
  • dll 만 따로 받아 주는 사이트는 쓰지 마세요. dll 은 실행 파일(exe)과 같은 형식입니다

1. dll 파일이란

dll 은 여러 프로그램이 같이 쓰는 기능을 따로 떼어 둔 파일입니다. 윈도우 폴더(C:\Windows\System32)에만 3,504개, 합쳐서 1,732.7MB 가 있었습니다. 지금 이 순간 vcruntime140.dll 하나를 불러 쓰고 있는 프로그램을 세어 보니 13개였습니다. 확인 명령은 아래와 같습니다(명령 프롬프트나 PowerShell).

tasklist /m vcruntime140.dll

2. 더블클릭해도 안 열리는 이유

레지스트리에서 dll 파일 형식을 보면 '열기' 같은 명령이 하나도 없었습니다. 혼자 실행하는 파일이 아니라 다른 프로그램이 불러 쓰는 파일이라서입니다.

그런데 파일 앞부분을 열어 보면 dll 과 exe(실행 파일)는 똑같이 4D 5A(MZ) 로 시작하고 PE 라는 같은 형식 서명을 갖고 있습니다. 위 그림처럼 차이는 머리 정보의 'DLL' 표시 하나뿐이었습니다. 그래서 출처를 모르는 dll 은 출처를 모르는 프로그램과 똑같이 조심해야 합니다.

이름과 달리 System32 폴더의 dll 은 64비트, SysWOW64 폴더의 dll 은 32비트였습니다(파일 머리의 CPU 값). 32비트 프로그램이 dll 을 못 찾을 때는 32비트용이 필요합니다.


3. '○○.dll 이 없어' 오류 해결

없다는 파일 이름이 vcruntime140.dll · msvcp140.dll · vcruntime140_1.dll 처럼 vc·msvc 로 시작하면 Visual C++ 런타임입니다. 이 PC 에서 세 파일의 설명은 모두 'Microsoft® C Runtime Library' 였고, 버전(14.50.35719)도 설치된 'Visual C++ v14 재배포 가능 패키지' 버전과 같았습니다.

마이크로소프트 학습 문서는 이 패키지가 'Microsoft C 및 C++ 런타임 라이브러리를 설치'하며 많은 앱이 이 라이브러리를 필요로 한다고 설명합니다. 최신 패키지 고정 주소는 문서에 이렇게 나와 있습니다.

문서에 따르면 재배포 패키지는 앱의 대상 아키텍처와 맞아야 합니다. 64비트 윈도우라도 32비트 프로그램이면 x86 패키지가 필요하니, 잘 모르면 둘 다 설치합니다(이 PC 에도 x64·x86 둘 다 설치돼 있었습니다). 그래도 안 되면 그 프로그램을 다시 설치하거나, 문서 말대로 '앱 공급업체에 문의'합니다.


4. dll 다운로드 사이트를 쓰면 안 되는 이유

검색하면 dll 파일만 하나씩 받게 해 주는 사이트가 나옵니다. 하지만 2번에서 본 것처럼 dll 은 실행 파일과 같은 형식이고, 프로그램이 불러들이는 순간 그 안의 코드가 실행됩니다. 공식 패키지가 아닌 곳에서 받은 dll 을 System32 에 넣는 것은 출처 모를 프로그램을 설치하는 것과 같습니다.


정리

상황 할 일
dll 을 더블클릭했는데 안 열림 정상 — 혼자 실행되는 파일이 아님
vcruntime140.dll·msvcp140.dll 없음 Visual C++ 재배포 가능 패키지(x64·x86) 설치
다른 dll 이 없음 그 프로그램 다시 설치 또는 제작사 문의
dll 다운로드 사이트 쓰지 않기

같이 보면 좋은 글


참고 (2026-10-30 확인)

  • 마이크로소프트 학습 — 지원되는 최신 Visual C++ 재배포 가능 패키지 다운로드
  • 실측: 이 PC(윈도우 11) — System32 dll 개수·용량, 파일 머리(MZ·PE·DLL 표시·CPU), 레지스트리 dll 형식, tasklist /m, 설치된 재배포 패키지 목록
반응형