Обновлено 19.08.2021
Доброго времени суток, уважаемые читатели, сегодня решаем ошибку 10016 параметры разрешений для конкретного приложения не дают разрешения Локально Активация для приложения COM-сервера с CLSID {D63B10C5-BB46-4990-A94F-E40B9D520160} и APPID {9CA88EE3-ACB7-47C8-AFC4-AB702511C276} в Windows server 2012 R2.
Ошибка 10016 в windows 10 и Windows Server
На сервере Windows Server 2012 R2 постоянно возникает ошибка 10016.
Имя журнала: Система
Источник: DistributedCOM
Код: 10016
{D63B10C5-BB46-4990-A94F-E40B9D520160}
Параметры разрешений для конкретного приложения не дают разрешения Локально Активация для приложения COM-сервера с CLSID
{D63B10C5-BB46-4990-A94F-E40B9D520160}
и APPID
{9CA88EE3-ACB7-47C8-AFC4-AB702511C276} или {316CDED5-E4AE-4B15-9113-7055D84DCC97} или {4839DDB7-58C2-48F5-8283-E1D1807D0D7D}
пользователю NT AUTHORITYСИСТЕМА с ИД безопасности (S-1-5-18) и адресом LocalHost (с использованием LRPC), выполняемого в контейнере приложения Недоступно с ИД безопасности (Недоступно). Это разрешение безопасности можно изменить с помощью средства администрирования служб компонентов.
The application-specific permission settings do not grant Local Activation permission for the COM Server application with CLSID
{6B3B8D23-FA8D-40B9-8DBD-B950333E2C52}
and APPID
{4839DDB7-58C2-48F5-8283-E1D1807D0D7D}
to the user NT AUTHORITYLOCAL SERVICE SID (S-1-5-19) from address LocalHost (Using LRPC) running in the application container Unavailable SID (Unavailable). This security permission can be modified using the Component Services administrative tool.
Данная ошибка выскакивает, когда какая-то из утилит не может обратиться к DCOM объекту, чаще всего, это связано с недостаточностью разрешений. Был реализован шаблон кодирования, где код сначала пытается получить доступ к компонентам DCOM с одним набором параметров. Если первая попытка не удалась, она пытается снова с другим набором параметров. Причина, по которой он не пропускает первую попытку, заключается в том, что существуют сценарии, в которых он может быть успешным. В этих сценариях это предпочтительнее. Если вы не в курсе, что такое COM объекты и DCOM, то если по простому, это концепция для создания программного обеспечения на основе взаимодействующих компонентов объекта, каждый из которых может использоваться во многих программах одновременно. На основе COM были созданы ActiveX, DCOM, COM+, DirectX, .Net.
- {316CDED5-E4AE-4B15-9113-7055D84DCC97} — Кнопка пуск (Immersive Shell) — интерфейс метро
- {4839DDB7-58C2-48F5-8283-E1D1807D0D7D} — ShellServiceHost
- {9CA88EE3-ACB7-47C8-AFC4-AB702511C276} — RuntimeBroker
Подробнее вы можете почитать в вики https://ru.wikipedia.org/wiki/Component_Object_Model
Сначала нужно обновить Windows через центр обновления, и если не поможет, то делаем по очереди предложенные решения:
- Назначаем недостающие права на ветку с GUID номером {9CA88EE3-ACB7-47C8-AFC4-AB702511C276} или другим, зависит от вашей ситуации с кодом ошибки 10016
- Удаление некоторых ключей реестра
- Использование скрипта PowerShell
Как исправить ошибку 10016 через назначение прав в реестре
- Сразу логинимся на проблемный сервер под администратором, чтобы не вводить всякий раз имя и пароль. Запускаем Regedit.
- Запускаем поиск (CTRL+F) и ищем второй из GUIDов в описании ошибки, т.е. APPID. В данном случае это «{9CA88EE3-ACB7-47C8-AFC4-AB702511C276}».
- Первый результат поиска должен быть в ключе HKEY_CLASSES_ROOTAppID. Наступаем на найденный GUID в левой панели и щелкаем правой кнопкой, выбираем Разрешения, а затем кнопку Дополнительно.
- В верхней части дополнительных параметров указан текущий владелец TrustedInstaller. Нажимаем рядом с ним ссылку Изменить.
- Нам нужно сделать владельцем локальную группу Администраторы. Затем кнопки Дополнительно, Поиск и выбираем в результатах поиска Администраторы.
- Ставим флажок «Заменить владельца подконтейнеров и объектов», кнопка ОК.
- После смены владельца мы можем изменять разрешения. В окне Разрешения на вкладке Безопасность даем для СИСТЕМА и Администраторы разрешение на полный доступ. ОК.
- Далее смотрим для нашего ключа HKEY_CLASSES_ROOTAppID{9CA88EE3-ACB7-47C8-AFC4-AB702511C276} значение параметра «(По умолчанию)» = «RuntimeBroker«.
8. В диспетчере серверов в правом верхнем углу меню Средства -> Службы компонентов. Открываем Компьютеры –> Мой компьютер –> Настройка DCOM. Правый клик по строке из п.7 RuntimeBroker, Свойства.
9. На вкладке Безопасность. В разделе Разрешения на запуск и активацию кнопка Изменить. Для группы СИСТЕМА разрешаем Локальный запуск и Локальная активация. ОК. Если вам runtimebroker не дает отредактировать настройки, то вам нужно дать права на него в реестре Windows
Открываем редактор реестра Windows. Переходим в ветку
HKEY_CLASSES_ROOTAppIDRuntimeBroker.exe
щелкаем по нему правым кликом и выбираем свойства.
Даем права для группы администраторы (Полный доступ)
Если не даст вам поставить, то вам нужно заменить владельца Trustinstaller на себя или группу администраторы. Как только дали права, идем опять в компоненты DCOM и выставляем права, как описывал выше.
10. Перезагружаем сервер, проверяем логи, по сути ошибку 10016 параметры разрешений для конкретного приложения не дают разрешения Локально Активация для приложения COM-сервера с CLSID {D63B10C5-BB46-4990-A94F-E40B9D520160} и APPID {9CA88EE3-ACB7-47C8-AFC4-AB702511C276} вы не должны больше увидеть.
Как исправить ошибку 10016 через удаление ключей из ветки OLe
Данный метод подразумевает удаление нескольких ключей реестра, которые отвечают за проверку прав на COM объекты. Нас будет интересовать ветка реестра:
HKEY_LOCAL_MACHINESOFTWAREMicrosoftOle
Ole — эта ветка управляют параметрами запуска по умолчанию и разрешениями доступа, а также возможностями безопасности на уровне вызовов для приложений на основе COM, которые не вызывают CoInitializeSecurity. Только администраторы, создатель объекта и система имеют полный доступ к этой части реестра. Все остальные пользователи имеют доступ только для чтения.
Перед тем, как вы будите вносить изменения я вам советую на всякий случай сделать резервную копию реестра или ветки.
Щелкаем по контейнеру Ole правым кликом и из контекстного меню выберите пункт Экспорт.
Задаем имя экспортируемого ключа. В случае проблем вы всегда сможете его импортировать и вернуть все к исходному состоянию.
Теперь, чтобы исправить ошибку 10016 в Windows 10 или как у меня в Windows Server 2012 R2 или выше, вам необходимо удалить четыре ключа:
- DefaultAccessPermission — Определяет список разрешений доступа по умолчанию для компьютера. Устанавливает список контроля доступа (ACL) участников, которые могут получить доступ к классам, для которых нет настройки AccessPermission . Этот ACL используется только приложениями, которые не вызывают CoInitializeSecurity и не имеют значения AccessPermission под своим ключом AppID. Среда выполнения COM на сервере проверяет ACL, описываемый этим значением, при олицетворении вызывающей стороны, которая пытается подключиться к объекту, и ее успех определяет, разрешен или запрещен доступ. Если проверка доступа не пройдена, соединение с объектом будет запрещено. Если это именованное значение не существует, только серверу участника и локальной системе разрешается вызывать сервер. По умолчанию это значение не содержит записей. Только принципал сервера и система могут вызывать сервер. Это значение обеспечивает простой уровень централизованного администрирования доступа по умолчанию к подключенным объектам на компьютере.
- DefaultLaunchPermission — Определяет список запуска по умолчанию для компьютера. Определяет список контроля доступа (ACL) участников, которые могут запускать классы, которые не указывают свой собственный ACL через значение реестра LaunchPermission. Права доступа по умолчанию следующие: Администраторы: разрешить запуск, СИСТЕМА: разрешить запуск, ИНТЕРАКТИВНО: разрешить запуск. Если значение LaunchPermission установлено для сервера, оно имеет приоритет над значением DefaultLaunchPermission . После получения локального или удаленного запроса на запуск сервера, у которого ключ AppID не имеет собственного значения LaunchPermission, проверяется ACL, описанный этим значением, при олицетворении клиента, и его успех разрешает или запрещает запуск кода класса.Это значение обеспечивает простой уровень централизованного администрирования запуска по умолчанию для доступа к другим незарегистрированным классам на компьютере. Например, администратор может использовать инструмент DCOMCNFG для настройки системы, чтобы разрешить доступ только для чтения для опытных пользователей. Поэтому OLE будет ограничивать запросы на запуск кода класса членами группы «Опытные пользователи». Впоследствии администратор может настроить разрешения на запуск для отдельных классов, чтобы предоставить возможность запуска кода класса другим группам или отдельным пользователям по мере необходимости.
- MachineAccessRestriction — Устанавливает политику ограничения на уровне компьютера для доступа к компоненту. Принципалы, которым здесь не предоставлены разрешения, не могут получить их, даже если разрешения предоставляются значением реестра DefaultAccessPermission или функцией CoInitializeSecurity. По умолчанию члены группы «Все» могут получать разрешения на локальный и удаленный доступ, а анонимные пользователи могут получать разрешения на локальный доступ.
- MachineLaunchRestriction — Устанавливает политику ограничения на уровне компьютера для запуска и активации компонента. Принципалы, которым здесь не предоставлены разрешения, не могут получить их, даже если разрешения предоставляются значением реестра DefaultAccessPermission или функцией CoInitializeSecurity. По умолчанию администраторы могут получать разрешения на локальный и удаленный запуск и активацию, а члены группы «Все» могут получать разрешения на локальную активацию и запуск.
Подробнее о данной ветке можно почитать по адресу https://docs.microsoft.com/en-us/windows/win32/com/hkey-local-machine-software-microsoft-ole
теперь находим все эти ключи, щелкаем по ним правым кликом мыши и удаляем со спокойной душей, далее я вам советую перезагрузить вашу систему. В подавляющем количестве случаев ошибка с кодом 10016 у вас больше не появится.
Исправление ошибки 10016 через PowerShell
Если вам не удалось изменить запуск службы для системы, то можно все поправить и избавиться от сообщений «APPID
{9CA88EE3-ACB7-47C8-AFC4-AB702511C276}
пользователю NT AUTHORITYСИСТЕМА с ИД безопасности (S-1-5-18) и адресом LocalHost (с использованием LRPC), выполняемого в контейнере приложения Недоступно с ИД безопасности (Недоступно)» с помощью скрипта PowerShell. Открываем ссылку с Microsoft
https://gallery.technet.microsoft.com/Grant-Revoke-Get-DCOM-22da5b96
Или во тут
Скачиваем тут сценарий DCOMPermissions.psm1
Кладем данный модуль в нужную вам папку. Далее вы открываете консоль PowerShell и переходите в месторасположение данного модуля, после чего его нужно импортировать:
Import-Module .DCOMPermissions.psm1
Grant-DCOMPermission -ApplicationID «{9CA88EE3-ACB7-47C8-AFC4-AB702511C276}» -Account «SYSTEM» -Type Launch -Permissions LocalLaunch,LocalActivation -OverrideConfigurationPermissions
Если ошибок не вышло, то значит все успешно применено, перезагрузка не потребуется.
Далее вы можете посмотреть примененные разрешения:
Get—DCOMPermission —ApplicationID «{9CA88EE3-ACB7-47C8-AFC4-AB702511C276}» —Type Launch
Вы увидите права у системы, у нее будет SID S-1-5-10.
На этом у меня все, мы успешно устранили ошибку DCOM 10016. Я должен подчеркнуть, что ошибка DCOM 10016 вряд ли повлияет на производительность вашей системы. В очень старые времена, когда Microsoft впервые представила «Distributed» в компонентной объектной модели, были уязвимости. Однако эти уязвимости были исправлены, и DCOM теперь безопасен. С вами был Иван Семин, автор и создатель IT портала Pyatilistnik.org.
Содержание
- Исправление ошибки 10016
- Шаг 1: Настройка разрешений в реестре
- Шаг 2: Настройка службы компонентов
- Заключение
- Вопросы и ответы
Ошибки, записи о которых хранятся в журнале Windows, говорят о проблемах в системе. Это могут быть как серьезные неполадки, так и те, что не требуют немедленного вмешательства. Сегодня мы поговорим о том, как избавиться от навязчивой строки в перечне событий с кодом 10016.
Данная ошибка относится к числу тех, что могут быть проигнорированы пользователем. Об этом говорит запись в базе знаний Microsoft. Вместе с тем, она может сообщать о том, что некоторые компоненты работают некорректно. Это касается серверных функций операционной системы, которые обеспечивают взаимодействие с локальной сетью, в том числе и с виртуальными машинами. Иногда мы можем наблюдать сбои и при удаленных сеансах. Если вы заметили, что запись появилась после возникновения подобных проблем, следует принять меры.
Еще одна причина появления ошибки – аварийное завершение работы системы. Это может быть отключение электроэнергии, сбой в программном или аппаратном обеспечении компьютера. В таком случае необходимо проверить, не появится ли событие при штатной работе, после чего уже приступать к решению, приведенному ниже.
Шаг 1: Настройка разрешений в реестре
Перед тем как приступать к редактированию реестра, создайте точку восстановления системы. Это действие поможет восстановить работоспособность при неудачном стечении обстоятельств.
Подробнее:
Как создать точку восстановления в Windows 10
Как откатить Windows 10 до точки восстановления
Еще один нюанс: все операции необходимо производить из учетной записи, имеющей права администратора.
- Внимательно смотрим на описание ошибки. Здесь нас интересуют два куска кода: «CLSID» и «AppID».
- Переходим к системному поиску (значок лупы на «Панели задач») и начинаем вводить «regedit». Когда в списке появится «Редактор реестра», нажимаем на него.
- Идем обратно в журнал и сначала выделяем и копируем значение AppID. Сделать это можно только с помощью комбинации CTRL+C.
- В редакторе выделяем корневую ветку «Компьютер».
Идем в меню «Правка» и выбираем функцию поиска.
- Вставляем в поле наш скопированный код, оставляем флажок только возле пункта «Имена разделов» и жмем «Найти далее».
- Кликаем ПКМ по найденному разделу и переходим к настройке разрешений.
- Здесь нажимаем кнопку «Дополнительно».
- В блоке «Владелец» идем по ссылке «Изменить».
- Снова жмем «Дополнительно».
- Переходим к поиску.
- В результатах выбираем «Администраторы» и ОК.
- В следующем окне также нажимаем ОК.
- Для подтверждения смены владельца кликаем «Применить» и ОК.
- Теперь в окне «Разрешения для группы» выбираем «Администраторов» и даем им полный доступ.
- Повторяем действия для CLSID, то есть ищем раздел, меняем владельца и предоставляем полный доступ.
Шаг 2: Настройка службы компонентов
Добраться до следующей оснастки также можно через системный поиск.
- Жмем на лупу и вводим слово «Службы». Здесь нас интересуют «Службы компонентов». Переходим.
- Раскрываем по очереди три верхних ветки.
Кликаем по папке «Настройка DCOM».
- Справа находим пункты с названием «RuntimeBroker».
Нам подходит только один из них. Проверить, какой именно, можно, перейдя в «Свойства».
Код приложения должен соответствовать коду AppID из описания ошибки (мы его искали первым в редакторе реестра).
- Идем на вкладку «Безопасность» и нажимаем кнопку «Изменить» в блоке «Разрешение на запуск и активацию».
- Далее по запросу системы удаляем нераспознаваемые записи разрешений.
- В открывшемся окне настроек жмем кнопку «Добавить».
- По аналогии с операцией в реестре, переходим к дополнительным опциям.
- Ищем «LOCAL SERVICE» и нажимаем ОК.
Еще раз ОК.
- Выбираем добавленного юзера и в нижнем блоке ставим флажки, как показано на скриншоте ниже.
- Таким же способом добавляем и настраиваем пользователя с именем «СИСТЕМА».
- В окне разрешений нажимаем ОК.
- В свойствах «RuntimeBroker» жмем «Применить» и ОК.
- Перезагружаем ПК.
Заключение
Таким образом, мы избавились от ошибки 10016 в журнале событий. Здесь стоит повториться: если она не вызывает проблем в работе системы, то лучше отказаться от описанной выше операции, так как необоснованное вмешательство в параметры безопасности может привести к более серьезным последствиям, устранить которые будет намного сложнее.
Еще статьи по данной теме:
Помогла ли Вам статья?
В каждой ОС может случиться сбой, в том числе и в «Виндовс». Каждая ошибка обычно помечается специальным кодом и текстом — пояснением, почему она появилась. Что делать, если вы столкнулись с ошибкой под номером 10016 в «Журнале событий»?
Ошибка 10016: с чем она связана и как проявляется
Ошибку DistributedCOM 10016 можно обнаружить в «Журнале событий». Она появляется из-за аварийного отключения ПК, аппаратного или программного сбоя устройства. Ошибка указывает на то, что служба DCOM не может запустить какое-либо приложение, потому что у системы отсутствуют права (разрешения) на это. В ошибке указываются два параметра: CLSID и APPID. Их значения нужны для поиска программы, на запуск которой у системы не хватает прав.
Как указывается в справке «Майкрософт» эта ошибка может быть проигнорирована юзером, но только в том случае, если система работает корректно. Но обычно, если есть такая проблема, система быстро забивает список «Просмотр событий» тысячами сообщений с ошибкой. Чтобы этого не происходило, нужно устранить неполадку.
Как убрать ошибку DistributedCOM 10016
Решение проблемы состоит из двух этапов — оба опишем как можно подробно. Наберитесь терпения и приступайте к процедуре.
Настройка разрешений в реестре
Перед редактированием реестра обязательно создайте точку восстановления, чтобы можно было в любой момент сделать откат до текущих настроек, если что-то пойдёт не так:
- Кликните по иконке лупы на «Панели задач» и вставьте команду systempropertiesprotection. Откройте результат выдачи.
В поиске вбейте код systempropertiesprotection
- Щёлкните по «Создать».
- Введите название для точки. Подтвердите её сохранение и дождитесь завершения процесса. В итоге вы должны получить уведомление о том, что точка была успешно сохранена.
Напишите название для точки восстановления и запомните его
Теперь переходим к самой процедуре:
- Заходим в «учётку», которая обладает правами администратора на вашем ПК. В «Журнале событий» выделяем значение для APPID, которое значится в ошибке.
Скопируйте значение для APPID в буфер обмена
- Зажимаем «Вин» и R — вставляем в строчку команду regedit и жмём на ОК.
- Кликаем по пункту «Компьютер» слева.
- Щёлкаем по «Правка» и через меню открываем поиск.
В правке выберите пункт «Найти»
- Вставьте скопированное значение из «Журнала событий» в строчку «Найти». Отметьте поиск по разделам и запустите сканирование.
- В результатах поиска кликаем слева по найденной папке (с названием значения APPID) правой клавишей мышки — выбираем строку «Разрешения».
Перейдите к разрешениям папки
- Тапаем по кнопке «Дополнительно» в новом окне.
Кликните по «Дополнительно» в небольшом окне
- Переходим по ссылке «Изменить».
Перейдите к смене владельца
- Снова жмём на «Дополнительно».
Нажмите на «Дополнительно» в маленьком окошке
- Кликаем по «Поиск». Выбираем в меню ниже администратора и щёлкаем по ОК.
Выделите администраторов и щёлкните по ОК
- Подтверждаем выбор пользователя.
Просто кликните по ОК
- Жмём сначала в разрешениях по «Применить», а затем по ОК, чтобы окно закрылось.
Примените настройки и нажмите на ОК
- В окошке «Разрешение для групп» выделяем администратора в верхнем списке и включаем для него полный доступ. Сохраняем настройки.
Предоставьте полный доступ администраторам
- То же самое делаем для значения параметра CLSID из ошибки в «Журнале событий».
Повторите процедуру в «Редакторе реестра», только уже с параметром CLSID из ошибки 10016
Настройка служебных компонентов
После манипуляций с разрешениями настройте некоторые системные компоненты:
- Откройте панель «Поиск» на «Панели задач» и введите запрос «Службы компонентов». Откройте соответствующий результат.
Откройте «Службы компонентов» через панель для поиска
- Запустите ветку «Компьютер», а затем «Мой ПК». Перейдите на вкладку «Настройки DCOM». Отыщите строчки RunTime Broker. Они будут где-то в середине списка.
Найдите компонент RunTime Broker в списке
- Там будут два параметра с указанным названием. Чтобы проверить, какой нужен именно сейчас, откройте по очереди свойства каждого из пунктов с помощью контекстного меню.
Перейдите к свойствам RunTime Broker
- Сравните код со значением APPID из ошибки.
Сравните значение APPID в ошибке 10016 с кодом приложения
- Когда определите нужный параметр RunTime Broker, зайдите в окне для его свойств в блок для безопасности. Щёлкните по «Изменить».
Щёлкните по «Изменить» в окошке
- Подтверждаем удаление нераспознанных разрешений.
Нажмите на «Удалить» в окне
- Щёлкните по клавише «Добавить».
Нажмите на «Добавить» под списком
- Выберите кнопку «Дополнительно».
- Щёлкните по «Поиск». В меню ниже выберите строчку Local Service и кликните по ОК.
Найдите юзера LOCAL SERVICE
- Подтвердите выбор пользователя.
- Выделяем в списке вверху Local Service. В таблице ниже отмечаем птичками параметры для локального запуска и локальной активации. Сохраняемся.
Выберите первое и третье значение в разрешениях
- Добавляем ещё одну «учётку» под названием «Система».
Выделите в списке «Система»
- Включаем также локальный запуск и локальную активацию.
Системе также предоставляем первое и третье разрешение
- В свойствах RunTime Broker применяем настройки и жмём на ОК.
Сохраните обязательно все изменения
Сначала вам нужно предоставить все разрешения через «Редактор реестра», а затем поработать в окне «Службы компонентов» с параметром RunTime Broker, чтобы успешно решить проблему с кодов 10016 в «Журнале событий». Перед процедурой не забудьте сохранить на ПК точку восстановления, чтобы можно было сделать в любой момент возврат исходного состояния системы до всех манипуляций.
- Распечатать
Оцените статью:
- 5
- 4
- 3
- 2
- 1
(4 голоса, среднее: 5 из 5)
Поделитесь с друзьями!
Компьютерные системные неполадки распределяются на критические для функционирования ПК, которые ограничивают работоспособность устройства, и на ошибки, не влияющие на производительность компьютера, но дают определённый дискомфорт при его эксплуатации. Одной из неполадок, причисляющихся к сбоям второй серии, является ошибка 10016 DistributedCOM, свойственная компьютерам, работающих на ОС Windows 10. О причинах появления, вариантах устранения ошибки расскажем в этой статье.
Причины возникновения сбоя
Как уже сказано, ошибка 10016 причисляется к категории некритичных, зачастую её появление не влияет на возможность дальнейшей эксплуатации ПК, её негатив выражается систематическим показом ошибки на экране при запуске компьютера. Многие пользователи даже не задумаются о её исправлении. Но ошибка имеет накопительное действие, что при длительном игнорировании неполадки сможет вылиться в снижение скорости работы ПК и появление «тормозов» системы. Как правило, возникает ошибка DistributedCOM 10016 в Windows 10, показываясь в реестре «Журнала событий» красной круглой иконкой сбоя со знаком восклицания. Причиной появления ошибки категории DistributedCOM с кодом 10016 является некорректность работы службы DCOM в результате отсутствия соответствующих требованиям системы допусков.
На вопрос, почему в Windows отсутствуют разрешения и допуски, заложенные в систему разработчиками, однозначного ответа не существует, но в качестве причин выделяют некорректную загрузку и установку приложений, предшествующую ошибке, воздействие вирусов или наличие фрагментарного мусора на винчестере. Независимо от причины появления, если в «Журнале событий» в разделе «Система» присутствует ошибка 10016, во избежание появления более серьёзных неполадок ПК игнорировать её не стоит.
Инструкция по устранению ошибки
Итак, как исправить неполадку с кодом 10016 DistributedCOM в операционной системе Windows 10. Сначала нужно заняться проверкой ПК на вирусы и оптимизировать работу компьютера. С этой целью рациональней всего использовать популярный и эффективный софт CCleaner, обладающий мощной функциональностью, позволяющей оптимизировать работу ПК, с помощью очистки системы от мусора. Также следует проверить систему на наличие вирусов программой, установленной на ПК для защиты системы или установить таковую.
В некоторых случаях исправить ошибку 10016 удаётся элементарной установкой и активацией работы специальной утилиты Repair Tool, разработанной корпорацией Microsoft для устранения критичных ошибок в Windows, имеющих системный характер. Если после применения утилиты ошибка не ушла, тогда придётся устранять ошибку в ручном режиме, который предполагает предварительное обеспечение доступа к внесению изменений в параметры DCOM. Вот что нужно сделать:
- Откройте вкладку «Выполнить», которая вызывается нажатием комбинации клавиш WIN и R.
- В строке «Открыть» пропишите команду REGEDIT и подтвердите нажатием кнопки OK.
- Через вкладку «Правка» открывшегося окна задайте команду «Найти».
- Дальше потребуется открыть «Журнал событий», скопировать оттуда буквенно-цифровой шифр их шестнадцати знаков и вставить его в поисковую строку, с подтверждением команды запустить поиск.
- По найденному программой каталогу потребуется кликнуть правой клавишей мышки, выбрать из выпадающего списка пункт «Разрешения», перейти во вкладку «Дополнительно», в качестве владельца определить модуль «Администраторы» и обеспечить «Полный доступ» к задачам реестра, отметив позицию галочкой.
Выполненные манипуляции дадут возможность внесения владельцем ПК в реестр DCOM изменений, что необходимо для устранения ошибки. Процедура устранения ошибки заключается в выполнении следующих операций:
- Аналогично предыдущей инструкции открываем консоль «Выполнить», где потребуется ввести команду DMCONFIG, и подтвердить её клавишей Enter.
- В открывшемся окне через «Службы компонентов» перейти последовательно из раздела «Компьютеры» во вкладку «Мой компьютер», где появится доступ к меню «Настройка DCOM».
- В настройках потребуется отыскать файл с названием IPBusEnum, зайти в «Свойства» объекта, кликнув по нему правой клавишей мышки и выбрать вкладку «Безопасность».
- Среди открывшихся доступных задач выбрать «Изменить», относящуюся к разделу «Разрешение на запуск и активацию», в окне «Группы и пользователи» отметить позицию «Система» и предоставить пользователю права на «Локальный запуск», поставив напротив этой строки галочку. Если пользователь под именем «Система» или System отсутствует в списке, его потребуется создать, применив команду «Добавить».
- Заключительный этап работы: подтверждение изменений кнопкой «ОК» и перезапуск ПК.
После перезапуска Windows, окно с ошибкой больше не должно появляться, а проверить результат можно посредством входа в «Журнал событий» и просмотром списка на наличие ошибок.
Подведение итогов
Даже ошибки, не влияющие на возможность эксплуатации компьютера, являются важным сигналом для пользователя, игнорировать который недопустимо в силу опасности перерастания незначительной неполадки в более критические для ПК. Незначительные неполадки значительно проще исправить, чем накапливать их, тем более, что они могут перерасти в более крупные.
Что касается ошибки 10016 DistributedCOM, то её устранение не занимает много времени и не требует реализации трудоёмких задач: выполнив манипуляции по описанной инструкции, можно за несколько минут устранить неполадку.
На странице поддержки Microsoft сказано, что ошибка 10016 DistributedCOM не относится к числу критических, поэтому пользователи могут игнорировать её появление. Увидели сообщение о сбое, закрыли его и работаете дальше. Однако иногда ошибка всё-таки говорит о проблемах в работе системы, которые требуют устранения. Так что давайте разбираться, из-за чего она появляется и как от неё избавиться.
Что это за ошибка
Ошибка DistributedCOM появляется, когда отдельные процессы не получают доступ к компонентам DCOM из-за отсутствия разрешений. Чаще всего она появляется после аварийного завершения работы, однако могут быть и другие ситуации: например, неудачные удалённые сеансы или сбои серверных функций операционной системы при взаимодействии с локальной сетью или виртуальными машинами.
Сообщение об ошибке DistributedCOM может появляться и при попытке выполнить самые простые действия: запустить игру или программу, перейти на страницу в браузере. Если эти ситуации повторяются часто, то игнорировать сбой уже не выйдет — окно с предупреждением сильно раздражает. Если вы столкнулись с такой ситуацией, давайте попробуем её устранить. Естественно, для выполнения всех описанных ниже действий нужна учётная запись с правами администратора.
Создание точки восстановления
Прежде чем приступать к исправлению ошибки, создадим точку восстановления. Это позволит чувствовать себя в безопасности и при необходимости вернуться к исходному состоянию:
- Кликаем правой кнопкой по меню «Пуск» и выбираем пункт «Система».
- Переходим по ссылке «Дополнительные параметры системы».
Сначала нужно убедиться, что функция восстановления системы включена
- Открываем вкладку «Защита системы».
- Если защита на системном диске выключена, нажимаем кнопку «Настроить» и включаем её.
- На вкладке «Защита системы» внизу есть кнопка «Создать». Нажимаем на неё, чтобы сохранить текущее состояние.
Создадим точку восстановления, чтобы ничего не потерять
- Задаём имя для точки, чтобы потом было проще её найти.
- Дожидаемся завершения процесса, закрываем все окна и возвращаемся к решению основной задачи — исправлению ошибки.
Можно обойтись без создания точки восстановления, но если в процессе устранения неполадок что-то пойдёт не так, то вам очень пригодится сохранённое исходное состояние.
Устранение сбоя
Прежде всего, необходимо узнать, какой именно процесс не может получить доступ к компонентам и заставляет систему выводить сообщение об ошибке. Сделать это поможет журнал событий Windows 10.
- Открываем встроенный поиск Windows.
- Набираем запрос «Просмотр событий» и запускаем одноимённое классическое приложение.
В журнале Windows 10 хранится информация обо всех значимых событиях
- В списке событий находим последнюю ошибку с источником DistributedCOM.
- В поле ниже появятся подробности. Сначала нужно выделить и скопировать AppID — всё, что находится внутри фигурных кнопок.
Идентификатор приложений поможет найти виновника появления ошибки
Мы знаем идентификатор приложения, из-за которого появилась ошибка. Теперь нужно дать ему доступ к компонентам DCOM, изменив список разрешений. Для этого мы будем использовать редактор реестра:
- Нажимаем Win+R, вводим команду regedit и запускаем реестр.
- Выделяем ветку «Компьютер».
- Раскрываем меню «Правка» и выбираем опцию «Найти».
- Вставляем значение AppID вместе с фигурными скобками. Отмечаем опцию «Имена разделов» и нажимаем «Найти далее».
В редакторе реестра есть встроенный поиск, который поможет найти нужный каталог
- Кликаем правой кнопкой по найденной папке. Выбираем пункт «Разрешения».
- Нажимаем на кнопку «Дополнительно».
- В строке «Владелец» щёлкаем по ссылке «Изменить».
Нам нужно изменить владельца, чтобы получить полный доступ к каталогу
- Нажимаем «Дополнительно».
- Переходим к поиску.
- В результатах выбираем группу «Администраторы» и нажимаем «ОК».
Владельцами каталога должны стать учетные записи с правами администратора
- В следующем окне тоже нажимаем «ОК» для сохранения конфигурации.
- Ещё раз нажимаем «Ок».
- На вкладке «Безопасность» в поле «Группы или пользователи» выбираем значение «Администраторы». Предоставляем им полный доступ и нажимаем «Ок» для сохранения конфигурации.
Теперь администраторы имеют полный доступ к каталогу
Эти действия нужно повторить для второго значения, которое доступно в подробностях ошибки в журнале событий. Оно называется CLSID. Порядок такой же: меняем владельца, предоставляем доступ, сохраняем новую конфигурацию.
Следующий шаг — настройка компонентов системы:
- Через встроенный поиск находим приложение «Службы компонентов».
- Раскрываем ветку «Службы компонентов» — «Компьютеры» — «Мой компьютер» — «Настройка DCOM».
- В правой части окна находим параметр RuntimeBroker. Их может быть два, нужный мы определим по его свойствам — код приложения в нем должен соответствовать AppID, который мы обнаружили в самом начале инструкции.
Обнаружили компонент, который вызывает ошибку DistributedCOM
- Переходим на вкладку «Безопасность» и в поле «Разрешения на запуск и активацию» нажимаем «Изменить».
- Удаляем нераспознаваемые записи.
- В новом окне нажимаем «Добавить».
Нам нужно добавить новых пользователей и дать им разрешения
- Кликаем по кнопке «Дополнительно».
- Нажимаем на «Поиск», выделяем Local Service и щёлкаем «ОК».
- Ещё раз нажимаем «ОК», чтобы закрыть окно.
Находим Local Service в списке пользователей
- Выбираем в списке Local Service.
- В столбце «Разрешить» отмечаем опции «Локальный запуск» и «Локальная активация».
Устанавливаем все необходимые разрешения для запуска компонента
- Аналогичным образом настраиваем разрешения для пользователя с именем «Система» (повторяем пункты 6-11).
- В свойствах RuntimeBroker нажимаем «ОК» для сохранения конфигурации.
- Перезагружаем систему.
Инструкция получилась сложной, но на практике сделать всё ещё труднее, да и к тому же это требует достаточно много времени. Поэтому если ошибка DistributedCOM не влияет на работоспособность системы, то лучше последовать совету поддержки Microsoft и проигнорировать её.
Post Views: 1 000