Computer >> 컴퓨터 >  >> 문제 해결 >> Windows 오류

DCOM 오류 10016 ‘응용 프로그램별 권한 설정이 COM 서버 응용 프로그램에 대한 로컬 활성화 권한을 부여하지 않습니다’ 해결 방법

Windows 10은 마이크로소프트가 선보인 대표적인 운영체제로, 이전 버전 대비 여러 면에서 개선되었기 때문에 마이크로소프트 역시 기존 사용자들에게 업그레이드를 적극적으로 권장해 왔습니다. 하지만 최근 들어 시스템 로그에 “DistributedCOM(DCOM) 오류 – 이벤트 ID: 10016”이 반복적으로 기록된다는 사용자 보고가 많이 접수되고 있습니다.

이 오류는 생각보다 흔하게 발생하며, 원인에 따라 다양한 형태의 오류 로그가 남습니다. 이 글에서는 특히 다음과 같은 오류 메시지를 중심으로 해결 방법을 살펴봅니다.

“CLSID {} 및 APPID {}가 있는 COM 서버 응용 프로그램에 대해, 응용 프로그램별 권한 설정이 LocalHost(LRPC 사용) 주소에서 응용 프로그램 컨테이너 Unavailable SID(Unavailable)로 실행 중인 사용자 NT AUTHORITY\LOCAL SERVICE SID()에 로컬 활성화 권한을 부여하지 않습니다. 이 보안 권한은 구성 요소 서비스 관리 도구를 사용하여 수정할 수 있습니다.”

오류의 원인

여러 사용자의 보고를 바탕으로 문제를 조사한 결과, 완벽하게 해결할 수 있는 방법을 찾아냈습니다. 함께 확인한 오류 발생 원인은 다음과 같습니다.

  • 잘못된 권한 설정: 특정 프로세스가 이벤트 로그에 표시된 DCOM 구성 요소에 접근하기에 충분한 권한을 갖고 있지 못할 때 이 오류가 발생합니다.

참고: 경우에 따라서는 이 오류가 기록되더라도 시스템이 정상적으로 동작할 수 있습니다. 이럴 때는 굳이 수정하지 않는 편이 좋지만, 특정 응용 프로그램의 정상 작동을 방해한다면 아래 가이드를 따라 진행하세요.

해결 방법: DCOM 구성 요소 접근 권한 부여

오류 메시지에서 알 수 있듯이, 일부 프로세스나 응용 프로그램이 DCOM 구성 요소에 접근하지 못해 오류가 발생합니다. 따라서 해당 DCOM 구성 요소에 접근 권한을 직접 부여하는 방식으로 문제를 해결할 수 있습니다.

  1. Windows + R 키를 눌러 실행 창을 엽니다.
  2. Regedit를 입력하고 Enter 키를 눌러 레지스트리 편집기를 실행합니다.
  3. 아래 경로로 이동합니다.
    HKEY_CLASSES_ROOT\CLSID\{D63B10C5-BB46-4990-A94F-E40B9D520160}
  4. 오른쪽 창에서 기본값(Default) 키를 두 번 클릭하고 값 데이터(Value Data)를 메모해 둡니다.
  5. 아래 경로로 이동합니다.
    HKEY_CLASSES_ROOT\AppID\{9CA88EE3-ACB7-47C8-AFC4-AB702511C276}
  6. 왼쪽 창에서 {9CA88EE3-ACB7-47C8-AFC4-AB702511C276} 키를 마우스 오른쪽 버튼으로 클릭합니다.
  7. 목록에서 사용 권한(Permissions)을 선택한 뒤 고급(Advanced)을 클릭합니다.
  8. 소유자(Owner) 항목 옆의 변경(Change)을 클릭합니다.
    참고: 소유자가 Trusted Installer로 표시되거나, 소유자를 표시할 수 없습니다(Cannot Display Owner)라는 메시지가 나타날 수 있습니다.
  9. 개체 유형(Object Type)을 클릭하고 Users를 선택합니다.
  10. 위치(Location) 버튼을 클릭하고 본인 컴퓨터 이름을 선택합니다.
  11. 입력란에 본인 계정의 사용자 이름을 입력합니다.
  12. 확인(OK)을 클릭한 뒤 창에서 적용(Apply)을 누릅니다.

참고: 위 5~12단계 과정을 HKEY_CLASSES_ROOT\CLSID\{D63B10C5-BB46-4990-A94F-E40B9D520160} 키에 대해서도 동일하게 반복합니다.

  1. 확인(OK)을 눌러 창을 닫고, 앞서 7단계에서 열었던 사용 권한(Permissions) 창으로 돌아갑니다.
  2. 그룹 또는 사용자 이름(Group or User names) 목록에서 Administrators를 선택하고 모든 권한(Full Control)에 체크합니다.
  3. Users를 선택하고 역시 모든 권한(Full Control)에 체크합니다.
  4. 적용(Apply)을 눌러 변경 사항을 저장한 후 확인(OK)을 눌러 창을 닫습니다.
  5. Windows + R 키를 눌러 실행 창을 엽니다.
  6. dcomcnfg.exe를 입력하고 Enter 키를 누릅니다.
  7. 다음 항목을 순서대로 확장합니다.
    구성 요소 서비스(Component Services) > 컴퓨터(Computers) > 내 컴퓨터(My Computer) > DCOM 구성(DCOM Config)
  8. 오른쪽 창에서 RunTime Broker를 마우스 오른쪽 버튼으로 클릭하고 목록에서 속성(Properties)을 선택합니다.
    참고: 목록에는 RunTime Broker두 개 표시될 수 있습니다. 아래 단계를 각각 실행해 올바른 인스턴스를 찾으세요.
  9. 속성 창에 표시된 AppID가 오류 메시지의 9CA88EE3-ACB7-47C8-AFC4-AB702511C276와 일치하면 올바른 인스턴스를 선택한 것입니다.
  10. 보안(Security) 탭을 열고 시작 및 활성화 권한(Launch and Activation Permissions)사용자 지정(Customize)에 체크합니다.
  11. 편집(Edit) 버튼을 클릭하고, Windows 보안 경고 창이 뜨면 제거(Remove)를 누릅니다.
  12. 추가(Add) 버튼을 클릭하고 선택할 개체 이름 입력란에 NT AUTHORITY\LOCAL SERVICE를 입력합니다.
    참고: NT AUTHORITY\Local Service가 검색되지 않으면 Local Service만 입력해 보세요.
  13. 확인(OK)을 누른 뒤 해당 항목에 로컬 활성화(Local Activation) 권한을 부여합니다.
  14. 문제가 계속 발생하는지 확인합니다.

모든 단계를 마친 후 시스템을 재부팅하고 이벤트 뷰어에서 DCOM 오류(10016)가 더 이상 기록되지 않는지 확인해 보세요. 만약 오류가 지속된다면, 로그에 표시된 CLSID/AppID 값이 위 예시와 다를 수 있으므로 실제 오류 로그의 값을 기준으로 동일한 절차를 적용하면 됩니다.