오류 코드 0x8007000d는 Windows Update에 필요한 파일이 손상되었거나 누락되었을 때 나타납니다. 이 오류가 발생하면 Windows 업데이트나 드라이버 설치가 불가능할 뿐만 아니라, 새 버전이 출시되어 있어도 Windows 10으로의 업그레이드조차 진행할 수 없습니다. 손상된 드라이버 역시 이 오류의 원인이 될 수 있습니다.
이 오류는 기기에서 Windows Update를 실행할 때 표시되며, 이 경로로 다운로드를 시도하는 모든 항목은 실패하게 됩니다. Microsoft는 Windows 10을 지속적인 업데이트를 제공하는 서비스형 운영체제로 운영한다는 구상을 갖고 있기 때문에, 이 기능이 작동하지 않으면 다양한 기능 개선은 물론 주기적으로 배포되는 보안 업데이트까지 모두 놓치게 되어 상당히 불편한 상황이 됩니다.
다행히 이 문제를 해결할 수 있는 방법은 여러 가지가 있습니다. 아래 방법들을 순서대로 하나씩 시도해 보면서 자신에게 맞는 해결책을 찾으시길 바랍니다. 첫 번째 방법으로 해결되지 않으면 다음 방법으로 넘어가면 됩니다.
1. 프로그램 호환성 문제 해결사 사용
특정 드라이버를 설치하려다 이 문제가 발생했다면, 해당 드라이버에 호환성 문제 해결사(Compatibility Troubleshooter)를 적용하면 해결될 수 있습니다. 절차는 비교적 간단하므로 아래 단계를 따라 진행해 보세요.
- Windows + E 키를 동시에 눌러 파일 탐색기를 연 뒤, 설치되지 않는 드라이버의 설치(setup) 파일이 있는 폴더로 이동합니다.
- 설치 파일을 마우스 오른쪽 버튼으로 클릭하고 호환성 문제 해결을 선택합니다.
- 프로그램 호환성 문제 해결사에서 프로그램 문제 해결을 선택합니다.
- 다음 화면에서 드라이버와 관련해 겪고 있는 문제를 선택한 후 다음을 클릭합니다.
- 해당 드라이버가 정상 작동했던 이전 버전의 Windows를 선택합니다(가장 안정적인 버전으로 평가받는 Windows 7이 좋은 선택입니다).
- 다음을 클릭한 후 프로그램 테스트…를 선택합니다.
- 평소처럼 설치를 진행하고, 문제없이 완료되면 마지막에 예, 이 프로그램에 대해 이 설정을 저장합니다를 선택합니다. 그래도 해결되지 않으면 다음 방법으로 넘어갑니다.
2. Windows Update 구성 요소 수동 초기화
Windows Update 구성 요소를 초기화하면 여러 가지 관련 문제를 해결할 수 있으며, 이번 오류 역시 예외가 아니므로 반드시 시도해 볼 가치가 있습니다.
- Windows + X 키를 누른 뒤 화면 좌측 하단에 나타나는 메뉴에서 명령 프롬프트(관리자)를 선택합니다.
- 명령 프롬프트에 아래 명령어를 한 줄씩 입력하고, 각 명령어마다 Enter 키를 눌러 실행합니다. 사소한 오타 하나가 더 큰 문제를 일으킬 수 있으므로 정확하게 입력해야 합니다.
net stop bits
net stop wuauserv
net stop appidsvc
net stop cryptsvc
Ren %systemroot%SoftwareDistribution SoftwareDistribution.bak
Ren %systemroot%system32catroot2 catroot2.bak - 다음으로 qmgr*.dat 파일을 삭제해야 합니다. 역시 명령 프롬프트에서 아래 명령어를 입력하고 Enter 키를 눌러 실행합니다.
Del "%ALLUSERSPROFILE%\Application Data\Microsoft\Network\Downloader\qmgr*.dat
- 명령 프롬프트 창에 그대로 있는 상태에서 아래 명령어를 입력해 System32 폴더로 이동합니다. 이 폴더에서 BITS 파일과 Windows Update 파일을 다시 등록하게 됩니다.
cd /d %windir%\system32
- 폴더로 이동한 후 아래 명령어들을 한 줄씩 입력하고 매번 Enter 키를 눌러 실행하면, 앞서 언급한 BITS 및 Windows Update 관련 파일이 재등록됩니다.
regsvr32.exe atl.dll
regsvr32.exe urlmon.dll
regsvr32.exe mshtml.dll
regsvr32.exe shdocvw.dll
regsvr32.exe browseui.dll
regsvr32.exe jscript.dll
regsvr32.exe vbscript.dll
regsvr32.exe scrrun.dll
regsvr32.exe msxml.dll
regsvr32.exe msxml3.dll
regsvr32.exe msxml6.dll
regsvr32.exe actxprxy.dll
regsvr32.exe softpub.dll
regsvr32.exe wintrust.dll
regsvr32.exe dssenh.dll
regsvr32.exe rsaenh.dll
regsvr32.exe gpkcsp.dll
regsvr32.exe sccbase.dll
regsvr32.exe slbcsp.dll
regsvr32.exe cryptdlg.dll
regsvr32.exe oleaut32.dll
regsvr32.exe ole32.dll
regsvr32.exe shell32.dll
regsvr32.exe initpki.dll
regsvr32.exe wuapi.dll
regsvr32.exe wuaueng.dll
regsvr32.exe wuaueng1.dll
regsvr32.exe wucltui.dll
regsvr32.exe wups.dll
regsvr32.exe wups2.dll
regsvr32.exe wuweb.dll
regsvr32.exe qmgr.dll
regsvr32.exe qmgrprxy.dll
regsvr32.exe wucltux.dll
regsvr32.exe muweb.dll
regsvr32.exe wuwebv.dll - 아래 명령어를 입력하고 실행하여 Winsock을 초기화합니다.
netsh winsock reset
netsh winhttp reset proxy - 처음에 중지했던 서비스를 아래 명령어로 다시 시작합니다(각 명령어마다 Enter 키를 누르는 것을 잊지 마세요).
net start bits
net start wuauserv
net start appidsvc
net start cryptsvc - 마지막으로 컴퓨터를 재부팅합니다. 이제 문제가 해결되었을 것입니다.
3. DISM 도구 실행
위 방법으로도 문제가 해결되지 않았다면 배포 이미지 서비스 및 관리(DISM) 도구를 실행해 보세요. Windows에 내장된 도구로, 손상된 시스템 파일과 관련된 잠재적 문제를 자동으로 복구해 줍니다.
- Windows + X 키를 누른 뒤 명령 프롬프트(관리자)를 선택하여 관리자 권한 명령 프롬프트를 엽니다.
- 아래 명령어를 입력하고 Enter 키를 눌러 실행한 후, 작업이 완료될 때까지 기다립니다.
dism.exe /online /cleanup-image /scanhealth
- 앞선 명령이 완료되면 아래 명령어를 입력하고, 마찬가지로 Enter 키를 누른 후 충분한 시간을 두고 완료될 때까지 기다립니다.
dism.exe /online /cleanup-image /restorehealth
- 모든 명령 실행이 끝나면 명령 프롬프트를 닫습니다.
이 문제는 Windows 10 출시 후 2년 가까이 지난 지금까지도 여전히 사용자들을 괴롭히는 수많은 오류 중 하나입니다. 하지만 위에서 소개한 방법들을 차근차근 따라 하면 스스로 문제를 해결하고 운영체제를 정상적으로 업데이트하거나 업그레이드할 수 있습니다. 만약 위 방법들로도 전혀 효과가 없었다면, Windows 미디어 생성 도구(Media Creation Tool)를 활용해 Windows 업데이트를 직접 설치하는 방법을 시도해 보시기 바랍니다.