오류 코드 0x800706B5(일명 'RPC_S_UNKNOWN_IF')는 Windows를 업데이트하려고 할 때 발생하는 문제입니다. 이 오류가 나타나는 원인은 여러 가지가 있지만, 대부분 다운로드한 업데이트 파일이 손상되었거나 Windows Update 파일이 백신 프로그램과 충돌하는 경우에 발생합니다.
참고: 아래의 복잡한 해결 방법을 시도하기 전에, 먼저 간단한 방법부터 확인해 보세요. 종료 메뉴에서 '업데이트 및 다시 시작' 옵션을 선택해 보는 것입니다. 이 방법으로 해결되지 않는다면 아래의 솔루션들을 순서대로 시도해 보시기 바랍니다.
해결 방법 1: Windows 업데이트 문제 해결사 실행
Windows 10에는 여러 가지 문제 해결사가 기본으로 내장되어 있어, 사용자가 겪고 있는 문제를 자동으로 진단하고 빠르게 수정해 줍니다. 이러한 문제 해결사는 컴퓨터 문제 해결 경험이 부족한 사용자들에게 큰 도움이 되며, 소요 시간도 거의 없습니다.
- 시작 버튼을 클릭한 후 그 위에 있는 톱니바퀴 아이콘을 눌러 설정 앱을 엽니다. 검색 기능을 이용해도 됩니다.
- '업데이트 및 보안' 섹션을 열고 '문제 해결' 메뉴로 이동합니다.
- 먼저 'Windows 업데이트' 옵션을 클릭하고 화면의 지침을 따라 Windows Update 서비스와 프로세스에 문제가 있는지 확인합니다.
- 문제 해결사가 완료되면 다시 '문제 해결' 섹션으로 돌아가 '인터넷 연결' 문제 해결사를 실행합니다.
- 문제가 해결되었는지 확인합니다.
해결 방법 2: Windows 업데이트 구성 요소 초기화
이 방법은 Windows Update의 각 구성 요소를 기본 설정으로 초기화하는 것이기 때문에 대부분의 업데이트 문제를 해결할 수 있습니다. 이 특정 오류 메시지에 대한 온라인 해결 자료가 많지 않지만, 이 솔루션은 반드시 시도해 볼 가치가 있습니다.
이 솔루션에는 레지스트리를 수정하는 단계가 포함되어 있습니다. 레지스트리에는 컴퓨터가 원활하게 작동하는 데 필요한 저수준 명령이 포함되어 있으므로, 초보 사용자는 각별히 주의해야 합니다. 다행히 현재 레지스트리 상태를 쉽게 백업하여 발생할 수 있는 문제에 대비할 수 있습니다.
레지스트리 백업 및 복원 방법은 관련 문서를 참고하시기 바랍니다(예: 'Windows 7, 8, 10에서 레지스트리 백업 및 복원하는 방법').
1단계: 핵심 서비스 중지
먼저 Background Intelligent Transfer Service(BITS), Windows Update(wuauserv), AppID 서비스(appidsvc), 암호화 서비스(cryptsvc)를 중지해야 합니다. 이들은 Windows 업데이트 프로세스의 핵심 서비스이며, Windows 보안 업데이트 등 다른 기능과도 함께 작동합니다. 문제를 해결하기 전에 이 서비스들을 비활성화하는 것이 좋습니다.
관리자 권한으로 명령 프롬프트를 연 후 아래 명령어를 복사하여 붙여넣고, 각 명령 입력 후 Enter 키를 누릅니다.
net stop bits
net stop wuauserv
net stop appidsvc
net stop cryptsvc
2단계: 불필요한 파일 삭제
다음으로, 업데이트 구성 요소를 초기화하기 위해 삭제해야 하는 특정 파일들을 제거합니다. 이 작업 역시 명령 프롬프트 창에서 진행합니다.
Del "%ALLUSERSPROFILE%\Application Data\Microsoft\Network\Downloader\qmgr*.dat"
3단계: 폴더 이름 변경 (강력한 초기화)
다음 단계 역시 관리자 권한 명령 프롬프트 창에서 진행하며, Windows Update 구성 요소를 재설정하기 위한 강력한 조치로 간주됩니다. 따라서 이것이 문제 해결의 마지막 기회가 아니라면 이 단계를 건너뛰어도 됩니다. 하지만 이 단계만으로도 많은 사용자들이 문제를 해결했기 때문에 시도해 보기를 권장합니다.
SoftwareDistribution 폴더와 catroot2 폴더의 이름을 변경합니다. 명령 프롬프트에 아래 명령어를 입력하고, 각 명령 입력 후 반드시 Enter 키를 누릅니다.
Ren %systemroot%\SoftwareDistribution SoftwareDistribution.bak
Ren %systemroot%\system32\catroot2 catroot2.bak
4단계: 서비스 보안 설명자 재설정
처음에 중지했던 서비스들의 보안 설명자를 기본값으로 재설정하기 위해 아래 명령어를 복사하여 붙여넣습니다. 표시된 각 명령을 실행하려면 Enter 키를 눌러야 합니다.
sc.exe sdset bits D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;AU)(A;;CCLCSWRPWPDTLOCRRC;;;PU)
sc.exe sdset wuauserv D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;AU)(A;;CCLCSWRPWPDTLOCRRC;;;PU)
5단계: System32 디렉터리로 이동
다음 단계도 명령 프롬프트 명령어이므로, 이 과정 동안 명령 프롬프트 창을 닫지 않도록 주의하세요.
cd /d %windir%\system32
6단계: BITS 관련 DLL 파일 재등록
Windows Update 구성 요소를 완전히 초기화하려면 BITS 파일을 다시 등록해야 합니다. 아래 각 파일마다 하나의 명령을 실행해야 하며, 입력 후마다 Enter 키를 누르는 것을 잊지 마세요.
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
7단계: 불필요한 레지스트리 항목 삭제
다음으로, 남아 있을 수 있는 불필요한 레지스트리 항목을 삭제합니다. 레지스트리 편집기에서 아래 위치로 이동합니다.
HKEY_LOCAL_MACHINE\COMPONENTS
레지스트리에서 Components 키를 클릭하고 화면 오른쪽에서 다음 항목들을 확인합니다. 발견되면 모두 삭제합니다.
PendingXmlIdentifier
NextQueueEntryIndex
AdvancedInstallersNeedResolving
8단계: Winsock 초기화
Winsock을 초기화합니다. 명령 프롬프트에 아래 명령어를 입력한 후 Enter 키를 누릅니다.
netsh winsock reset
Windows XP를 사용 중이라면 프록시 설정을 구성해야 합니다. 명령 프롬프트에 아래 명령어를 입력하고 Enter 키를 누릅니다.
proxycfg.exe -d
그 외 다른 버전의 Windows를 사용 중이라면 아래 명령어를 입력한 후 Enter 키를 누릅니다.
netsh winhttp reset proxy
9단계: 서비스 재시작 및 컴퓨터 재부팅
위의 모든 단계를 성공적으로 완료했다면, 처음에 중지했던 서비스들을 다시 시작해야 합니다. 아래 명령어를 명령 프롬프트 창에 복사하여 붙여넣고 실행합니다.
net start bits
net start wuauserv
net start appidsvc
net start cryptsvc
모든 단계를 마친 후 컴퓨터를 다시 시작합니다.
해결 방법 3: 업데이트 수동 설치
이 오류 코드를 제거하는 또 다른 방법은 업데이트를 수동으로 설치하여 우회하는 것입니다. 이러한 오류 코드는 때때로 버그가 있는 업데이트로 인해 발생하며, 아래 지침에 따라 업데이트를 수동으로 설치하면 문제를 피할 수 있습니다.
- Microsoft 공식 웹사이트(Windows 10 업데이트 기록 페이지)를 방문하여 최신 업데이트가 무엇인지 확인합니다. 최신 업데이트는 사이트 왼쪽 목록 상단에 현재 Windows 10 버전과 함께 표시됩니다.
- KB(Knowledge Base) 번호를 'KB' 글자까지 포함하여 복사합니다(예: KB4040724).
- Microsoft Update Catalog를 열고 방금 복사한 번호를 검색합니다.
- 왼쪽의 다운로드 버튼을 클릭하고, 사용 중인 OS 버전(32비트 또는 64비트)을 선택한 후 파일을 다운로드합니다.
- 방금 다운로드한 파일을 실행하고 화면의 지침에 따라 업데이트 과정을 완료합니다.
- 업데이트가 완료되면 컴퓨터를 다시 시작하고, Microsoft가 배포하는 다음 업데이트에서 동일한 문제가 발생하는지 확인합니다.
관련 문서
Windows 업데이트 오류 0x80070057 해결 방법 등 유사한 업데이트 오류에 대한 추가 정보도 함께 참고하시면 도움이 됩니다.