Меню

Исправление ошибки 10016 через powershell

Обновлено 19.08.2021

Ошибка 10016

Доброго времени суток, уважаемые читатели, сегодня решаем ошибку 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}

{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), выполняемого в контейнере приложения Недоступно с ИД безопасности (Недоступно). Это разрешение безопасности можно изменить с помощью средства администрирования служб компонентов.

Событие 10016

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.

{316CDED5-E4AE-4B15-9113-7055D84DCC97}

Данная ошибка выскакивает, когда какая-то из утилит не может обратиться к 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 через назначение прав в реестре

  1. Сразу логинимся на проблемный сервер под администратором, чтобы не вводить всякий раз имя и пароль. Запускаем Regedit.
  2. Запускаем поиск (CTRL+F) и ищем второй из GUIDов в описании ошибки, т.е. APPID. В данном случае это «{9CA88EE3-ACB7-47C8-AFC4-AB702511C276}».Ошибка 10016
  3. Первый результат поиска должен быть в ключе HKEY_CLASSES_ROOTAppID. Наступаем на найденный GUID в левой панели и щелкаем правой кнопкой, выбираем Разрешения, а затем кнопку Дополнительно.Меняем права для устранения ошибки 10016
  4. В верхней части дополнительных параметров указан текущий владелец TrustedInstaller. Нажимаем рядом с ним ссылку Изменить.Изменение владельца
  5. Нам нужно сделать владельцем локальную группу Администраторы. Затем кнопки Дополнительно, Поиск и выбираем в результатах поиска Администраторы. код ошибки 10016
  6. Ставим флажок «Заменить владельца подконтейнеров и объектов», кнопка ОК.Заменить владельца подконтейнеров
  7. После смены владельца мы можем изменять разрешения. В окне Разрешения на вкладке Безопасность даем для СИСТЕМА и Администраторы разрешение на полный доступ. ОК.
  8. Далее смотрим для нашего ключа HKEY_CLASSES_ROOTAppID{9CA88EE3-ACB7-47C8-AFC4-AB702511C276} значение параметра «(По умолчанию)» = «RuntimeBroker«.

Ошибка 10016 в windows-1
8. В диспетчере серверов в правом верхнем углу меню Средства -> Службы компонентов. Открываем Компьютеры –> Мой компьютер –> Настройка DCOM. Правый клик по строке из п.7 RuntimeBroker, Свойства.

Ошибка 10016 в windows-2
9. На вкладке Безопасность. В разделе Разрешения на запуск и активацию кнопка Изменить. Для группы СИСТЕМА разрешаем Локальный запуск и Локальная активация. ОК. Если вам runtimebroker не дает отредактировать настройки, то вам нужно дать права на него в реестре Windows

Не дает отредактировать службу dcom при ошибке 10016

Открываем редактор реестра Windows. Переходим в ветку

HKEY_CLASSES_ROOTAppIDRuntimeBroker.exe

щелкаем по нему правым кликом и выбираем свойства.

runtimebroker exe windows 10-2

Даем права для группы администраторы (Полный доступ)

runtimebroker exe windows 10-3

Если не даст вам поставить, то вам нужно заменить владельца Trustinstaller на себя или группу администраторы. Как только дали права, идем опять в компоненты DCOM и выставляем права, как описывал выше.

runtimebroker exe windows 10-4

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 правым кликом и из контекстного меню выберите пункт Экспорт.

Экспорт ветки реестра Ole

Задаем имя экспортируемого ключа. В случае проблем вы всегда сможете его импортировать и вернуть все к исходному состоянию.

Выгрузка ветки реестра при ошибке 10016

Теперь, чтобы исправить ошибку 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

Исправление ошибки 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

Исправление 10016 через powershell

Кладем данный модуль в нужную вам папку. Далее вы открываете консоль PowerShell и переходите в месторасположение данного модуля, после чего его нужно импортировать:

Import-Module .DCOMPermissions.psm1

Grant-DCOMPermission -ApplicationID «{9CA88EE3-ACB7-47C8-AFC4-AB702511C276}» -Account «SYSTEM» -Type Launch -Permissions LocalLaunch,LocalActivation -OverrideConfigurationPermissions

Если ошибок не вышло, то значит все успешно применено, перезагрузка не потребуется.

Исправление ошибки dcom в powershell

Далее вы можете посмотреть примененные разрешения:

GetDCOMPermission ApplicationID «{9CA88EE3-ACB7-47C8-AFC4-AB702511C276}» Type Launch

Вы увидите права у системы, у нее будет SID S-1-5-10.

ошибка 10016

На этом у меня все, мы успешно устранили ошибку DCOM 10016.  Я должен подчеркнуть, что ошибка DCOM 10016 вряд ли повлияет на производительность вашей системы. В очень старые времена, когда Microsoft впервые представила «Distributed» в компонентной объектной модели, были уязвимости. Однако эти уязвимости были исправлены, и DCOM теперь безопасен. С вами был Иван Семин, автор и создатель IT портала Pyatilistnik.org.

Ошибка DistributedCOM с кодом события 10016 в Windows 11/10  — одна из самых известных проблем с которой пользователи сталкиваются в системном журнале. Эта ошибка запускается, когда определенные процессы не содержат прав доступа к компонентам DCOM, которые упоминаются в журналах событий. Это ограничивает безупречную работу компьютера, что в конечном итоге раздражает пользователей. Система сразу же забивает «Просмотрщик событий» тысячами сообщений с показам событий.

В ходе расследования выясняется, что при попытке запустить сервер DCOM с помощью приложения у вас нет никаких прав на это, и вы получите приведенную ниже ошибку в средстве просмотра событий: «Параметры разрешений для конкретного приложения не дают разрешения Локальной Активации для приложения COM-сервера«.

Перед тем, как приступить к исправлению, создайте точку восстановления системы.

Исправление кода события 10016 Ошибки DistributedCOM

Это самый быстрый и простой способ, чтобы исправить ошибку DistributedCOM с кодом события 10016, но менее надежный.

Нажмите Win+R и введите regedit, чтобы запустить редактор реестра. В реестре перейдите по пути:

HKEY_LOCAL_MACHINESOFTWAREMicrosoftOle
  • Удалите следующие значения (некоторых может не быть): DefaultAccessPermission, DefaultLaunchPermission, MachineAccessRestriction, MachineLaunchRestriction.HKEY_LOCAL_MACHINE SOFTWARE Microsoft Ole

Перезагрузите ПК и проверьте, появляется ли ошибка. Если да, то следуем ниже большому способу из 3 пунктов, где мы зададим привилегии для определенного DCOM.

Проверка процесса

1. Прежде всего должны отсортировать процесс или службу, связанную с кодом ошибки 10016. Далее вы найдете описание ошибки чуть ниже во вкладке «общие» или «подробности». Из описания скопируйте CLSID. Он может выглядеть как {D63B10C5… .

Ошибка 10016 DistributedCOM

2. Отроем теперь редактор реестра. Нажмите сочетание кнопок Win+R и введите regedit.

win+r

3. В редакторе реестра выделите «Компьютер» одним нажатием мышки и нажмите «Правка» > «Найти«.

поиск ключей в реестре

  1. Введите в поле поиска свой CLSID ключ, который типа {D63B10C5… . Поставьте галочку искать только «имена разделов».
  2. Вам выдаст ключ в правой стороне, выделите его мышкой один раз.
  3. В правом поле у вас будет ключ «По умолчанию» со значением RuntimeBroker. Запомните это значение оно нам пригодится в дальнейшим.

Следующая задача — запустить сценарий, чтобы внести некоторые изменения в раздел разрешений, найденных в службах компонентов для этой службы.

ключ реестра RuntimeBroker

Открытие сервисов компонентов

Наберите в поиске windows «Службы компонентов«, нажмите правой кнопкой мыши и выберите запустить от имени администратора.

Службы компонентов запуск от имени админа

Перейдите по следующему пути Службы компонентов > Компьютеры > Мой компьютер > Настройка DCOM > и найдите в списке RuntimeBroker.

В некоторых случаях может быть два файла с этим именем. Вам нужно выяснить, какой файл несет ответственность за ошибку, что ниже мы и сделаем.

Компонент RuntimeBroker


  1. Нажмите по очереди на двух файлов с именем RuntimeBroker правой кнопкой мыши выберите «Свойства«.
  2. Во вкладке «Общие» у вас будет «Код приложения» запомните его на двух файлах RuntimeBroker.
  3. Сравните код с ошибкой в «Журнале событий». APPID в журнале с ошибкой, должен соответствовать коду приложения в файле RuntimeBroker.

Определение кода приложения

Исправление разрешений

Наконец, когда вы удостоверились, что это именно тот файл выдает ошибку, то проделайте следующие шаги:

  • Нажмите в свойствах RuntimeBroker вкладку «Безопасность«.
  • Кнопка «настроить» должна быть активной.
  • Проделайте ниже шаги чтобы активировать настройки. (Не Запуск сценария PowerShell).

Запуск сценария PowerShell активирует эту кнопку настройки с помощью команды, но я рекомендую воспользоваться этим способом, если у вас не получилось все по порядку. Пропустите этот шаг «Запуск сценария PowerShell», если что потом вернетесь к нему.

Запуск сценария PowerShell

Чтобы обойти эту ошибку, вам нужно отредактировать некоторые разрешения в разделе «Служба компонентов» ключа RuntimeBroker. Прежде чем перейти к модификации, вам нужно запустить скрипт, который поможет вам изменить разрешения. Дальше поймете зачем мы это делали.

1. Нажмите сочетание кнопок Win+X и выберите Windows PowerShell (администратор).

2. Загрузите файл с кодом ниже. Разархивируйте скаченный архив, в нем содержится текстовый файл с кодом.

3. Вставьте скаченный скрипт с файла в командную строку PowerShell.

PowerShell исправление ошибки 10016 DistributedCOM


Разрешение на запуск и активацию


  • 1-2. Скопируйте «Код приложения» в службах и компонентах, компонента RuntimeBroker.
  • 3. Откройте редактор реестра, нажмите «правка» > «найти» и вставьте код приложения, который до этого скопировали. Нажмите правой кнопкой мыши на найденным ключе в реестре и выберите «Разрешения«.
  • 4. далее в окне нажмите «Дополнительно«.

Добавление прав разрешений в реестре


  1. В окне сверху «Владелец» нажмите «Изменить«.
  2. В следующим окне нажмите внизу «Дополнительно«.
  3. Нажмите справа «Поиск» и ниже со списка выберите «Администраторы«.

Добавить расширенные права пользователей


  • Теперь переходим обратно в компоненты к свойству файла RuntimeBroker и мы видим, что теперь кнопка «настроить» стала интерактивной.
  • Выскочит предупреждающее окно нажмите Удалить, если вам не мог код сценария powerShell.
  • Нажмите Отмена, если вам помог код сценария powerShell.
  • Нажмите Изменить напротив кнопки «настроить» в графе «разрешения на запуск и активацию».

Настройка рунтаймброкер компонента

Добавим группы система и local service.

  1. В окне, где имеются учетные записи нажмите «Добавить«.
  2. Ниже кнопка «Дополнительно«.
  3. Нажмите «Поиск» с боку.
  4. Найдите локальную службу LOCAL SERVICE и нажмите OK.

Добавить локальную службу


Аналогичным способом, что описан выше добавьте «Система«.

Добавление системы


Теперь у вас появились две группы система и local service, нажмите на каждую из них и поставьте галочки в пунктах «Локальный запуск» и «Локальная активация».

Перезагрузите компьютер, ноутбук и код события 10016 Ошибка DistributedCOM должен пропасть.

Добавление прав доступа


Смотрите еще:

  • DISM ошибка 87 в командной строке Windows 
  • Ошибка 0x8000ffff при восстановлении системы Windows 10
  • Как исправить Ошибку 0xc1900101 0x20004 при установке Windows 10
  • Как исправить ошибки обновлений Windows 10
  • Как узнать IP-адрес компьютера с помощью PowerShell Windows

[ Telegram | Поддержать ]

Содержание

  1. Ошибка DistributedCOM Код события 10016 Windows
  2. Исправление кода события 10016 Ошибки DistributedCOM
  3. Проверка процесса
  4. Открытие сервисов компонентов
  5. Исправление разрешений
  6. Ошибка 10016 windows securitycenter wscdataprotection
  7. Ошибка 10016 в windows 10 и Windows Server
  8. Методы решения ошибки 10016
  9. Как исправить ошибку 10016 через назначение прав в реестре
  10. Как исправить ошибку 10016 через удаление ключей из ветки OLe
  11. Исправление ошибки 10016 через PowerShell
  12. Ошибка Windows.SecurityCenter.WscBrokerManager [Решение]
  13. 7 Replies to “ Ошибка Windows.SecurityCenter.WscBrokerManager [Решение] ”
  14. Distributedcom 10016 Windows 10, как исправить?
  15. Что означают ошибки DCOM 10016 в Windows 10
  16. Сделать копию реестра
  17. Предоставление разрешений DCOM
  18. Предоставление разрешений определенным приложениям
  19. Запуск скрипта PowerShell
  20. Внесение разрешений в «Службе компонентов»
  21. Устранение ошибки 10016 при запуске «Центра обеспечения безопасности»
  22. Видео — Distributedcom 10016 Windows 10, как исправить?

В ходе расследования выясняется, что при попытке запустить сервер DCOM с помощью приложения у вас нет никаких прав на это, и вы получите приведенную ниже ошибку в средстве просмотра событий: «Параметры разрешений для конкретного приложения не дают разрешения Локальной Активации для приложения COM-сервера«.

Перед тем, как приступить к исправлению, создайте точку восстановления системы.

Исправление кода события 10016 Ошибки DistributedCOM

Это самый быстрый и простой способ, чтобы исправить ошибку DistributedCOM с кодом события 10016, но менее надежный.

Нажмите Win+R и введите regedit, чтобы запустить редактор реестра. В реестре перейдите по пути:

Перезагрузите ПК и проверьте, появляется ли ошибка. Если да, то следуем ниже большому способу из 3 пунктов, где мы зададим привилегии для определенного DCOM.

Проверка процесса

%D0%9E%D1%88%D0%B8%D0%B1%D0%BA%D0%B0 10016 DistributedCOM

2. Отроем теперь редактор реестра. Нажмите сочетание кнопок Win+R и введите regedit.

regedit windowsr

3. В редакторе реестра выделите «Компьютер» одним нажатием мышки и нажмите «Правка» > «Найти«.

%D0%BF%D0%BE%D0%B8%D1%81%D0%BA %D0%BA%D0%BB%D1%8E%D1%87%D0%B5%D0%B9 %D0%B2 %D1%80%D0%B5%D0%B5%D1%81%D1%82%D1%80%D0%B5

%D0%BA%D0%BB%D1%8E%D1%87 %D1%80%D0%B5%D0%B5%D1%81%D1%82%D1%80%D0%B0 RuntimeBroker

Открытие сервисов компонентов

Наберите в поиске windows «Службы компонентов«, нажмите правой кнопкой мыши и выберите запустить от имени администратора.

%D0%A1%D0%BB%D1%83%D0%B6%D0%B1%D1%8B %D0%BA%D0%BE%D0%BC%D0%BF%D0%BE%D0%BD%D0%B5%D0%BD%D1%82%D0%BE%D0%B2 %D0%B7%D0%B0%D0%BF%D1%83%D1%81%D0%BA %D0%BE%D1%82 %D0%B8%D0%BC%D0%B5%D0%BD%D0%B8 %D0%B0%D0%B4%D0%BC%D0%B8%D0%BD%D0%B0

Перейдите по следующему пути Службы компонентов > Компьютеры > Мой компьютер > Настройка DCOM > и найдите в списке RuntimeBroker.

В некоторых случаях может быть два файла с этим именем. Вам нужно выяснить, какой файл несет ответственность за ошибку, что ниже мы и сделаем.

%D0%9A%D0%BE%D0%BC%D0%BF%D0%BE%D0%BD%D0%B5%D0%BD%D1%82 RuntimeBroker

%D0%9E%D0%BF%D1%80%D0%B5%D0%B4%D0%B5%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5 %D0%BA%D0%BE%D0%B4%D0%B0 %D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F

Исправление разрешений

Наконец, когда вы удостоверились, что это именно тот файл выдает ошибку, то проделайте следующие шаги:

Запуск сценария PowerShell активирует эту кнопку настройки с помощью команды, но я рекомендую воспользоваться этим способом, если у вас не получилось все по порядку. Пропустите этот шаг «Запуск сценария PowerShell», если что потом вернетесь к нему.

Чтобы обойти эту ошибку, вам нужно отредактировать некоторые разрешения в разделе «Служба компонентов» ключа RuntimeBroker. Прежде чем перейти к модификации, вам нужно запустить скрипт, который поможет вам изменить разрешения. Дальше поймете зачем мы это делали.

1. Нажмите сочетание кнопок Win+X и выберите Windows PowerShell (администратор).

2. Загрузите файл с кодом ниже. Разархивируйте скаченный архив, в нем содержится текстовый файл с кодом.

3. Вставьте скаченный скрипт с файла в командную строку PowerShell.

PowerShell %D0%B7%D0%B0%D0%B4%D0%B0%D1%82%D1%8C %D0%BA%D0%BE%D0%BC%D0%B0%D0%BD%D0%B4%D1%83

%D0%A0%D0%B0%D0%B7%D1%80%D0%B5%D1%88%D0%B5%D0%BD%D0%B8%D0%B5 %D0%BD%D0%B0 %D0%B7%D0%B0%D0%BF%D1%83%D1%81%D0%BA %D0%B8 %D0%B0%D0%BA%D1%82%D0%B8%D0%B2%D0%B0%D1%86%D0%B8%D1%8E

123

%D0%94%D0%BE%D0%B1%D0%B0%D0%B2%D0%B8%D1%82%D1%8C %D1%80%D0%B0%D1%81%D1%88%D0%B8%D1%80%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5 %D0%BF%D1%80%D0%B0%D0%B2%D0%B0 %D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D1%82%D0%B5%D0%BB%D0%B5%D0%B9

%D0%9D%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0 %D1%80%D1%83%D0%BD%D1%82%D0%B0%D0%B9%D0%BC%D0%B1%D1%80%D0%BE%D0%BA%D0%B5%D1%80 %D0%BA%D0%BE%D0%BC%D0%BF%D0%BE%D0%BD%D0%B5%D0%BD%D1%82%D0%B0

Добавим группы система и local service.

%D0%94%D0%BE%D0%B1%D0%B0%D0%B2%D0%B8%D1%82%D1%8C %D0%BB%D0%BE%D0%BA%D0%B0%D0%BB%D1%8C%D0%BD%D1%83%D1%8E %D1%81%D0%BB%D1%83%D0%B6%D0%B1%D1%83

Аналогичным способом, что описан выше добавьте «Система«.

%D0%94%D0%BE%D0%B1%D0%BE%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5 %D1%81%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D1%8B

Теперь у вас появились две группы система и local service, нажмите на каждую из них и поставьте галочки в пунктах «Локальный запуск» и «Локальная активация».

Перезагрузите компьютер, ноутбук и код события 10016 Ошибка DistributedCOM должен пропасть.

Источник

Ошибка 10016 windows securitycenter wscdataprotection

Oshibka 10016

Доброго времени суток, уважаемые читатели, сегодня решаем ошибку 10016 параметры разрешений для конкретного приложения не дают разрешения Локально Активация для приложения COM-сервера с CLSID и APPID <9ca88ee3-acb7-47c8-afc4-ab702511c276>в Windows server 2012 R2.

Ошибка 10016 в windows 10 и Windows Server

На сервере Windows Server 2012 R2 постоянно возникает ошибка 10016.

D63B10C5 BB46 4990 A94F E40B9D520160

Параметры разрешений для конкретного приложения не дают разрешения Локально Активация для приложения COM-сервера с CLSID

и APPID
<9ca88ee3-acb7-47c8-afc4-ab702511c276>или <316cded5-e4ae-4b15-9113-7055d84dcc97>или <4839ddb7-58c2-48f5-8283-e1d1807d0d7d>
пользователю NT AUTHORITYСИСТЕМА с ИД безопасности (S-1-5-18) и адресом LocalHost (с использованием LRPC), выполняемого в контейнере приложения Недоступно с ИД безопасности (Недоступно). Это разрешение безопасности можно изменить с помощью средства администрирования служб компонентов.

Sobytie 10016

10016

Методы решения ошибки 10016

Сначала нужно обновить Windows через центр обновления, и если не поможет, то делаем по очереди предложенные решения:

Как исправить ошибку 10016 через назначение прав в реестре

Oshibka 10016 v windows 2
9. На вкладке Безопасность. В разделе Разрешения на запуск и активацию кнопка Изменить. Для группы СИСТЕМА разрешаем Локальный запуск и Локальная активация. ОК. Если вам runtimebroker не дает отредактировать настройки, то вам нужно дать права на него в реестре Windows

oshibka 10016 01

щелкаем по нему правым кликом и выбираем свойства.

runtimebroker exe windows 10 2

Даем права для группы администраторы (Полный доступ)

runtimebroker exe windows 10 3

Если не даст вам поставить, то вам нужно заменить владельца Trustinstaller на себя или группу администраторы. Как только дали права, идем опять в компоненты DCOM и выставляем права, как описывал выше.

runtimebroker exe windows 10 4

10. Перезагружаем сервер, проверяем логи, по сути ошибку 10016 параметры разрешений для конкретного приложения не дают разрешения Локально Активация для приложения COM-сервера с CLSID и APPID <9ca88ee3-acb7-47c8-afc4-ab702511c276>вы не должны больше увидеть.

Как исправить ошибку 10016 через удаление ключей из ветки OLe

Данный метод подразумевает удаление нескольких ключей реестра, которые отвечают за проверку прав на COM объекты. Нас будет интересовать ветка реестра:

Щелкаем по контейнеру Ole правым кликом и из контекстного меню выберите пункт Экспорт.

eksport vetski reestra ole

Задаем имя экспортируемого ключа. В случае проблем вы всегда сможете его импортировать и вернуть все к исходному состоянию.

vygruzka vetki reestra pri oshibke 10016

Теперь, чтобы исправить ошибку 10016 в Windows 10 или как у меня в Windows Server 2012 R2 или выше, вам необходимо удалить четыре ключа:

теперь находим все эти ключи, щелкаем по ним правым кликом мыши и удаляем со спокойной душей, далее я вам советую перезагрузить вашу систему. В подавляющем количестве случаев ошибка с кодом 10016 у вас больше не появится.

ustranenie oshibki 10016

Исправление ошибки 10016 через PowerShell

Если вам не удалось изменить запуск службы для системы, то можно все поправить и избавиться от сообщений «APPID
<9ca88ee3-acb7-47c8-afc4-ab702511c276>
пользователю NT AUTHORITYСИСТЕМА с ИД безопасности (S-1-5-18) и адресом LocalHost (с использованием LRPC), выполняемого в контейнере приложения Недоступно с ИД безопасности (Недоступно)» с помощью скрипта PowerShell. Открываем ссылку с Microsoft

Скачиваем тут сценарий DCOMPermissions.psm1

Ispravlenie 10016 cherez powershell

Кладем данный модуль в нужную вам папку. Далее вы открываете консоль PowerShell и переходите в месторасположение данного модуля, после чего его нужно импортировать:

Если ошибок не вышло, то значит все успешно применено, перезагрузка не потребуется.

oshibka 10016 02

Далее вы можете посмотреть примененные разрешения:

Вы увидите права у системы, у нее будет SID S-1-5-10.

Источник

Ошибка Windows.SecurityCenter.WscBrokerManager [Решение]

Если у вас после загрузки компьютера возникают ошибки с кодом 10016 с CLSID Windows.SecurityCenter.SecurityAppBroker и Windows.SecurityCenter.WscBrokerManager или Windows.SecurityCenter.WscDataProtection, решение есть.

Данные ошибки относятся к центру службы безопасности Windows, служба Windows SecurityCenter (wscsvc) по умолчанию запускается с задержкой автоматического запуска, а службы SecurityAppBroker и WscBrokerManager пытаются запустится в самом начале запуска системы, возникает ошибка 10016 запуска с оповещением в системном журнале. Что бы избавиться от данных ошибок, в реестре можно отключить отложенный авто запуск этой службы и активировать обычный автозапуск при старте системы:

1. Открываем редактор реестра Win+R
2. открываем ветку реестра HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServiceswscsvc
3. В правой части находим DelayedAutoStart и меняем там значение с 1 на
4. Перезагружаем компьютер.

После этого данные ошибки в системном журнале должны пропасть.
Так же данные ошибки могут пропасть, если установить сторонний антивирус.

Проблема решилась таким способом, больше в журнале нет записей после перезагрузки.
Решение: Смотрим в журнале событие 10016. Закладка Подробности, там же режим XML. там будет 1B562E86-B7AA-4131-BADC-B6F3A001407E. В реестре находим папку EventLog-System. В ней находим 1B562E86-B7AA-4131-BADC-B6F3A001407E. Enabled и EnableProperty меняем значения на 0.

Источник

Ошибки с кодом события 10016 могут появляться в «Просмотре событий» на всех ПК с установленной Windows 10. Источником ошибок является расширение «Distributed COM» (DCOM), связывающее объекты на разных ПК.

Существуют различные способы исправления ошибок DCOM с идентификатором 10016, включающие работу с реестром или использование средств администрирования служб компонентов.

Distributedcom 10016 Windows 10 kak ispravit

События с идентификатором 10016 записываются в журнал событий, когда компоненты Microsoft обращаются за доступом к компонентам DCOM без требуемых в этом случае разрешений.

Компанией Microsoft создан сценарий работы, при котором системный код обращается за доступом к компонентам DCOM с предпочтительным набором параметров, и если доступ не предоставлен, код обращается снова с другим набором.

Служба поддержки Microsoft сообщает, что указанные ошибки заложены в работу ОС, происходят на всех ОС Windows 10 и могут быть проигнорированы пользователями без последствий для работы системы.

Oshibki s kodom 10016 zapisyvajutsya v zhurnal sobytij kogda komponenty Microsoft obrashhajutsya za dostupom k komponentam DCOM

В некоторых случаях сообщения об ошибках могут начать появляться после установки определенных исправлений Windows.

Несмотря на то, что это не критическая системная ошибка, заполнение журнала ошибками 100016 может затруднить поиск и диагностику других ошибок на ПК.

В указанных случаях ошибки можно исправить либо предоставлением разрешения для компонентов DCOM, либо полным отключением регистрации ошибок Distributed COM.

Сделать копию реестра

Прежде чем выполнить шаги по устранению ошибок DCOM 10016, необходимо сделать копию системного реестра. Это позволит восстановить работу ОС в случае ее сбоев.

Также перед выполнением нижеследующих действий необходимо зайти в Windows с правами администратора.

Справка! Первый созданный в Windows 10 пользователь (напр., при инсталляции системы) имеет права администратора.

Шаг 1. Нажать клавиши «Win+R».

Nazhimaem klavishi WinR

Шаг 2. Напечатать в меню «regedit» и щелкнуть «ОК».

Pechataem v menju regedit i shhelkaem OK

Шаг 3. Откроется «Registry Editor» («Редактор реестра»). Нажать «File» («Файл») и щелкнуть «Export» («Экспорт»).

Nazhimaem File shhelkaem Export

Шаг 4. В следующем окне отметить «All» («Все»).

Otmechaem All

Шаг 5. Выбрать папку для размещения копии реестра и ввести ее имя.

Vybiraem papku dlya razmeshheniya kopii reestra i vvodim ee imya

Шаг 6. Щелкнуть «Save» («Сохранить»).

Shhelkaem Save

Предоставление разрешений DCOM

Шаг 1. Нажать «Win+R», напечатать «regedit» и щелкнуть «ОК».

Pechataem v menju regedit i shhelkaem OK

Шаг 2. Перейти в папку «Ole», раскрывая двойным левым кликом мышки древо реестра по следующему пути:

Raskryvaem dvojnym levym klikom myshki direktoriju HKEY LOCAL MACHINE

Raskryvaem papku SOFTWARE

Klikaem dvazhdy po papke Microsoft

Nahodim i vydelyaem levym shhelchkom myshki papku Ole

Шаг 3. Просмотреть содержимое папки справа и удалить 4 ключа (их может быть менее 4-х), имеющие метки:

Выделите название ключа правым кликом мышки, затем нажмите левым по опции «Удалить».

Vydelyaem nazvanie kljucha pravym klikom myshki zatem nazhimaem levym po opcii Udalit

Справка! Удаление указанных ключей снова даст DCOM доступ в системе к разрешениям по умолчанию, а также даст разрешения приложениям, требующим доступ к серверу DCOM.

Шаг 4. Перезагрузить компьютер, и проверить журнал событий на наличие указанных ошибок.

Если в журнале все еще имеются ошибки DCOM 10016, перейти к следующему решению.

Предоставление разрешений определенным приложениям

В сообщениях об ошибках 10016 указывается, что приложение не получило разрешений на активацию COM-сервера, при этом выдаются идентификаторы CLSID, APPID, SID.

Шаг 1. Чтобы выяснить, какой процесс или служба связаны с указанным идентификатором, выделить его курсором мыши и скопировать в описании события. Например, идентификатор CLSID начинается с «

Для этого нужно перейти в журнал «Просмотр событий»:

Nazhimaem po znachku Kompjuter pravoj knopkoj myshki zatem levoj po stroke Upravlenie

Shhelkaem po nazvaniju razdela Prosmotr sobytij

V bloke Tip sobytiya klikaem po znachku ryadom s nazvaniem Oshibka

Nahodim stroku s oshibkoj 10016 i nazhimaem po nej dvojnym klikom myshki

Vo vkladke Obshhie kopiruem cifro bukvennye dannye idushhie za CLSID vmeste so skobkami

Шаг 2. После выполнения копирования нажать «Win+R», напечатать «regedit» и щелкнуть «ОК».

Pechataem v menju regedit i shhelkaem OK

Шаг 3. Нажать «Ctrl+F» и вставить в меню «Find» («Найти») скопированные данные нажатием «Ctrl+V». Нажать «Find Next» («Найти»).

Vstavlyaem v menju Find skopirovannye dannye nazhatiem CtrlV nazhimaem Find Next

Программа выдаст результат по ключу «HK_CLASSES_ROOTCLSID».

Справа в окне должно находится два ключа, при этом в значении «Default» («По умолчанию») указано имя требуемой службы (в примере – «RuntimeBroker»). «AppID» также должен соответствовать указанным данным в сообщении об ошибке.

Perepisyvaem ili kopiruem imya sluzhby

Далее необходимо изменить разрешения в «Службах компонентов» для найденных процессов или служб.

Запуск скрипта PowerShell

Чтобы изменить разрешения в «Службах компонентов», необходимо активировать специальный скрипт, позволяющий вносить эти изменения.

Шаг 1. Нажать «Win+R», напечатать «powershell» и щелкнуть «ОК».

Pechataem powershell i shhelkaem OK

Шаг 2. Кликнуть здесь и скопировать код целиком, нажав кнопки «Ctrl+A» для выделения всего текста, затем кликнуть правой кнопкой мышки на выделенном и выбрать опцию «Копировать».

Nazhimaem knopki CtrlA dlya vydeleniya vsego teksta

Klikaem pravoj knopkoj myshki na vydelennom i vybiraem opciju Kopirovat

Шаг 3. Щелкнуть правой кнопкой мыши в окне PowerShell, чтобы вставить в него скопированную информацию. Команда запуститься автоматически, дождитесь завершения процесса до появления в окне сообщение «Done» («Выполнено»).

Shhelkaem pravoj knopkoj myshki v okne PowerShell chtoby vstavit skopirovannyj skript

Ozhidaem zaversheniya zapushhennogo processa poka ne poyavitsya soobshhenie Done Vypolneno

Внесение разрешений в «Службе компонентов»

Шаг 1. Нажать «Win+R», напечатать «dcomcnfg» и щелкнуть «ОК».

Pechataem dcomcnfg shhelkaem OK

Шаг 2. Перейти, последовательно раскрывая двойными щелчками:

Raskryvaem dvojnym shhelchkom sluzhbu Component Services

Raskryvaem sluzhbu Computers

Raskryvaem sluzhbu My Computer

Raskryvaem dvojnym shhelchkom sluzhbu DCOM Config

Шаг 3. Прокрутить список вниз до «Runtime Broker» (в примере их два). Чтобы узнать, какой из перечисленных процессов указан в ошибке, щелкнуть правой кнопкой мыши по каждому из них и выбрать «Properties» («Свойства»).

Shhelkaem pravoj knopkoj myshi po Runtime Broker i vybiraem Svojstva

На вкладке «General» («Общие») будет указан идентификатор приложения, который должен совпадать с идентификатором из сообщения об ошибке.

Na vkladke General sravnivaem identifikator prilozheniya s identifikatorom iz soobshheniya ob oshibke

Справка! Если в «Просмотре событий» имеются ошибки 10016 с более, чем одним CLSID, возможно, необходимо исправить оба «RuntimeBrokers».

Шаг 4. Находясь в окне свойств «RuntimeBroker», щелкнуть закладку «Security» («Безопасность»).

Shhelkaem zakladku Security

Кнопка «Edit» («Правка») в разрешениях «Launch and Activation Permissions» должна быть активной.

Примечание! Если «Edit» неактивна, скрипт PowerShell не сработал и его необходимо повторить.

Шаг 5. Нажать кнопку «Edit».

Nazhimaem knopku Edit

При нажатии «Edit» может появиться окно с предупреждением о нераспознанных разрешениях. Нажать «Cancel» («Отмена»).

Nazhimaem Cancel

Шаг 6. Появится список учетных записей по умолчанию, возможно с записью «Account Unknown» («Неизвестная учетная запись»), которую не следует удалять. Нажать «Add» («Добавить»).

Nazhimaem Add

Шаг 7. Ввести «System» («Система») и нажать «Check Names» («Проверить имена»). Нажать «OK» для добавления учетной записи в список.

Vvodim System i nazhimaem Check Names

Шаг 8. Нажать «Add» еще раз, и ввести «Local Service» («Местная служба») и нажать «Check Names» («Проверить имена»). Нажать «OK» для добавления учетной записи в список.

Шаг 9. Выбирая щелчком мыши «System» и «Local Service», проставить флажки «Local Launch» («Локальный запуск») и «Local Activation» («Локальная активация») в разделе «Allow» («Разрешить»). Нажать «OK».

Vybiraem shhelchkom myshi System otmechaem flazhkami Local Launch i Local Activation v razdele Allow nazhimaem OK

Шаг 10. Перезагрузить ПК.

Больше указанная ошибка не должна появляться в журнале просмотра событий Windows.

Устранение ошибки 10016 при запуске «Центра обеспечения безопасности»

В журнале событий Windows 10 также могут появляться ошибки, имеющие CLSID:

V zhurnale sobytij Windows 10 mozhno uvidet oshibki imejushhie tolko bukvennyj CLSID

Эти ошибки связаны с задержкой автоматического запуска службы «Центра обеспечения безопасности Windows» из-за попытки указанных процессов инициировать его запуск на слишком раннем этапе, что приводит к выдаче ошибок.

Указанные ошибки повторяются и после запуска указанной службы (wscsvc).

Для устранения ошибок необходимо изменить значение отложенного запуска wscsvc, чтобы служба быстрее запускалась в процессе ее загрузки. Однако изменить значение через приложение «Службы» невозможно, поскольку у пользователя нет на это прав.

Указанное действие можно выполнить только через реестр.

Шаг 1. Нажать «Win+R», напечатать «regedit» и нажать «ОК».

Pechataem v menju regedit i shhelkaem OK

Шаг 2. Перейдите к разделу:

Raskryvaem dvojnym levym klikom myshki direktoriju HKEY LOCAL MACHINE

Raskryvaem papku SYSTEM

Raskryvaem CurrentControlSet 1 1

Otkryvaem papku Services

Nahodim papku wscsvc vydelyaem ee levym klikom myshki

Шаг 3. В правой части посмотреть значение «DWORD» с именем «DelayedAutoStart» и дважды щелкните по нему.

Nahodim parametr so znacheniem DWORD s imenem DelayedAutoStart i dvazhdy shhelkaem po nemu

Шаг 4. Изменить значение с 1 на 0 и нажать «OK».

Menyaem znachenie s 1 na 0 i nazhimaem OK

Шаг 5. Закрыть редактор реестра и перезагрузить ПК.

Сообщения об ошибках DCOM 10016, связанные с Windows.SecurityCenter, больше не будут появляться в «Просмотре событий» системы.

Видео — Distributedcom 10016 Windows 10, как исправить?

Понравилась статья?
Сохраните, чтобы не потерять!

Источник

# ================================================================ # by K # Thanks to: # https://gist.github.com/kitmenke/3213d58ffd60ae9873ca466f143945f4 # https://hinchley.net/articles/changing-dcom-security-permissions-with-powershell/ # ================================================================ # To take ownership of a registry key: # https://social.technet.microsoft.com/Forums/windowsserver/en-US/e718a560-2908-4b91-ad42-d392e7f8f1ad/take-ownership-of-a-registry-key-and-change-permissions?forum=winserverpowershell # Originally from here maybe? # http://www.leeholmes.com/blog/2010/09/24/adjusting-token-privileges-in-powershell/ # ************************* START enable-privilege function enable-privilege { param( ## The privilege to adjust. This set is taken from ## http://msdn.microsoft.com/en-us/library/bb530716(VS.85).aspx [ValidateSet( SeAssignPrimaryTokenPrivilege,SeAuditPrivilege,SeBackupPrivilege, SeChangeNotifyPrivilege,SeCreateGlobalPrivilege,SeCreatePagefilePrivilege, SeCreatePermanentPrivilege,SeCreateSymbolicLinkPrivilege,SeCreateTokenPrivilege, SeDebugPrivilege,SeEnableDelegationPrivilege,SeImpersonatePrivilege,SeIncreaseBasePriorityPrivilege, SeIncreaseQuotaPrivilege,SeIncreaseWorkingSetPrivilege,SeLoadDriverPrivilege, SeLockMemoryPrivilege,SeMachineAccountPrivilege,SeManageVolumePrivilege, SeProfileSingleProcessPrivilege,SeRelabelPrivilege,SeRemoteShutdownPrivilege, SeRestorePrivilege,SeSecurityPrivilege,SeShutdownPrivilege,SeSyncAgentPrivilege, SeSystemEnvironmentPrivilege,SeSystemProfilePrivilege,SeSystemtimePrivilege, SeTakeOwnershipPrivilege,SeTcbPrivilege,SeTimeZonePrivilege,SeTrustedCredManAccessPrivilege, SeUndockPrivilege,SeUnsolicitedInputPrivilege)] $Privilege, ## The process on which to adjust the privilege. Defaults to the current process. $ProcessId = $pid, ## Switch to disable the privilege, rather than enable it. [switch]$Disable ) ## Taken from P/Invoke.NET with minor adjustments. $definition = @’ using System; using System.Runtime.InteropServices; public class AdjPriv { [DllImport(«advapi32.dll», ExactSpelling = true, SetLastError = true)] internal static extern bool AdjustTokenPrivileges(IntPtr htok, bool disall, ref TokPriv1Luid newst, int len, IntPtr prev, IntPtr relen); [DllImport(«advapi32.dll», ExactSpelling = true, SetLastError = true)] internal static extern bool OpenProcessToken(IntPtr h, int acc, ref IntPtr phtok); [DllImport(«advapi32.dll», SetLastError = true)] internal static extern bool LookupPrivilegeValue(string host, string name, ref long pluid); [StructLayout(LayoutKind.Sequential, Pack = 1)] internal struct TokPriv1Luid { public int Count; public long Luid; public int Attr; } internal const int SE_PRIVILEGE_ENABLED = 0x00000002; internal const int SE_PRIVILEGE_DISABLED = 0x00000000; internal const int TOKEN_QUERY = 0x00000008; internal const int TOKEN_ADJUST_PRIVILEGES = 0x00000020; public static bool EnablePrivilege(long processHandle, string privilege, bool disable) { bool retVal; TokPriv1Luid tp; IntPtr hproc = new IntPtr(processHandle); IntPtr htok = IntPtr.Zero; retVal = OpenProcessToken(hproc, TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY, ref htok); tp.Count = 1; tp.Luid = 0; if (disable) { tp.Attr = SE_PRIVILEGE_DISABLED; } else { tp.Attr = SE_PRIVILEGE_ENABLED; } retVal = LookupPrivilegeValue(null, privilege, ref tp.Luid); retVal = AdjustTokenPrivileges(htok, false, ref tp, 0, IntPtr.Zero, IntPtr.Zero); return retVal; } } ‘@ $processHandle = (Get-Process Id $ProcessId).Handle $type = Add-Type $definition PassThru $type[0]::EnablePrivilege($processHandle,$Privilege,$Disable) } # ************************* END enable-privilege function take-over ($path) { $owner = [Security.Principal.NTAccount]Administrators enable-privilege SeTakeOwnershipPrivilege | Out-Null $key = [Microsoft.Win32.Registry]::ClassesRoot.OpenSubKey($path,ReadWriteSubTree,TakeOwnership) $acl = $key.GetAccessControl() $acl.SetOwner($owner) $key.SetAccessControl($acl) $acl = $key.GetAccessControl() $rule = New-Object System.Security.AccessControl.RegistryAccessRule Administrators,FullControl,ContainerInherit,None,Allow $acl.SetAccessRule($rule) $key.SetAccessControl($acl) enable-privilege SeTakeOwnershipPrivilege Disable | Out-Null } function take-back ($path) { $owner = [Security.Principal.NTAccount]NT SERVICETrustedInstaller enable-privilege SeTakeOwnershipPrivilege | Out-Null $key = [Microsoft.Win32.Registry]::ClassesRoot.OpenSubKey($path,ReadWriteSubTree,TakeOwnership) $acl = $key.GetAccessControl() $rule = New-Object System.Security.AccessControl.RegistryAccessRule Administrators,ReadKey,ContainerInherit,None,Allow $acl.SetAccessRule($rule) $key.SetAccessControl($acl) $acl = $key.GetAccessControl() $acl.SetOwner($owner) enable-privilege SeRestorePrivilege | Out-Null $key.SetAccessControl($acl) enable-privilege SeTakeOwnershipPrivilege Disable | Out-Null enable-privilege SeRestorePrivilege Disable | Out-Null } function fix ($path,$user) { $name = LaunchPermission $key = [Microsoft.Win32.Registry]::ClassesRoot.OpenSubKey($path,ReadWriteSubTree,ReadKey, SetValue) $value = $key.GetValue($name) $sddl = ([wmiclass]Win32_SecurityDescriptorHelper).BinarySDToSDDL($value).SDDL Write-Host «SDDL:`t$sddl« $sd = (New-Object System.Security.AccessControl.RawSecurityDescriptor («O:SYG:SYD:(A;;CCDCSW;;;$user)S:«)).GetSddlForm(Access) $sid = $sd.Substring($sd.LastIndexOf(;) + 1).TrimEnd()) $ace = «(A;;CCDCSW;;;$sid)« Write-Host «ACE:`t$ace« if ($sddl.IndexOf($ace) -eq -1) { if ($sddl.LastIndexOf(S:) -eq -1) { $sddl += $ace } else { $sddl = $sddl.Insert($sddl.LastIndexOf(S:),$ace) } Write-Host «New:`t$sddl« $value = ([wmiclass]Win32_SecurityDescriptorHelper).SDDLToBinarySD($sddl).BinarySD $key.SetValue($name,$value) } else { Write-Host Already fixed, we do nothing. } } # fix all 10016 events occurred in past 10 minutes. $events = Get-WinEvent FilterHashTable @{ LogName = System; Level = 2; Id = 10016 } | Where-Object { $_.TimeCreated -ge (Get-Date).AddMinutes(-10) } foreach ($e in $events) { $path = AppID + $e.Properties[4].Value $user = $e.Properties[7].Value takeover $path fix $path $user takeback $path }

Содержание

  • 1 Исправление кода события 10016 Ошибки DistributedCOM
  • 2 Исправление ошибки DistributedCOM
  • 3 Подводим итоги
  • 4 Почему появляется ошибка DistributedCOM 10016?
  • 5 Как исправить ошибку DCOM 10016?

Главная » Инструкции windows » Ошибка DistributedCOM Код события 10016 Windows 10

Код события 10016 DistributedCOM Windows 10 Ошибка — одна из самых известных проблем, с которой пользователи сталкиваются в системном журнале. Эта ошибка запускается, когда определенные процессы не содержат прав доступа к компонентам DCOM, которые упоминаются в журналах событий. Это ограничивает безупречную работу компьютера, что в конечном итоге раздражает пользователей. Система сразу же забивает «Просмотрщик событий» тысячами сообщений с показам событий.

В ходе расследования выясняется, что при попытке запустить сервер DCOM с помощью приложения у вас нет никаких прав на это, и вы получите приведенную ниже ошибку в средстве просмотра событий: «Параметры разрешений для конкретного приложения не дают разрешения Локальной Активации для приложения COM-сервера«. Чтобы иметь четкую концепцию и избежать ошибок, мы разделим всю процедуру на четыре последовательных раздела. Давайте перейдем к ним сразу. Мы сосредоточимся на решении этой досадной ошибки в журнале событий «код события 10016 DistributedCOM Windows 10«, следуя приведенным ниже инструкциям.

Перед тем, как приступить к исправлению создайте точку восстановления системы.

Исправление кода события 10016 Ошибки DistributedCOM

Проверка процесса

Шаг 1. Прежде всего должны отсортировать процесс или службу, связанную с кодом ошибки 10016. Далее вы найдете описание ошибки чуть ниже во вкладке «общие» или «подробности». Из описания скопируйте CLSID. Он может выглядеть как {D63B10C5… .

Ошибка-10016-DistributedCOM.jpg

Шаг 2. Отроем теперь редактор реестра. Нажмите сочетание кнопок Win+R и введите regedit.

regedit-windowsr.png

  • В редакторе реестра выделите «Компьютер» одним нажатием мышки и нажмите «Правка» > «Найти«.

поиск-ключей-в-реестре.jpg

  1. Введите в поле поиска свой CLSID ключ, который типа {D63B10C5… . Поставьте галочку искать только «имена разделов».
  2. Вам выдаст ключ в правой стороне, выделите его мышкой один раз.
  3. В правом поле у вас будет ключ «По умолчанию» со значением RuntimeBroker. Запомните это значение оно нам пригодится в дальнейшим.

Следующая задача — запустить сценарий, чтобы внести некоторые изменения в раздел разрешений, найденных в службах компонентов для этой службы.

ключ-реестра-RuntimeBroker.jpg

Открытие сервисов компонентов

  • Наберите в поиске windows «Службы компонентов«, нажмите правой кнопкой мыши и выберите запустить от имени администратора.

Службы-компонентов-запуск-от-имени-админа.jpg

  • Перейдите по следующему пути Службы компонентов > Компьютеры > Мой компьютер > Настройка DCOM > и найдите в списке RuntimeBroker.

В некоторых случаях может быть два файла с этим именем. Вам нужно выяснить, какой файл несет ответственность за ошибку, что ниже мы и сделаем.

Компонент-RuntimeBroker.jpg

  1. Нажмите по очереди на двух файлов с именем RuntimeBroker правой кнопкой мыши выберите «Свойства«.
  2. Во вкладке «Общие» у вас будет «Код приложения» запомните его на двух файлах RuntimeBroker.
  3. Сравните код с ошибкой в «Журнале событий». APPID в журнале с ошибкой, должен соответствовать коду приложения в файле RuntimeBroker.

Определение-кода-приложения.jpg

Исправление разрешений

Наконец, когда вы удостоверились, что это именно тот файл выдает ошибку, то проделайте следующие шаги:

  • Нажмите в свойствах RuntimeBroker вкладку «Безопасность«.
  • Кнопка «настроить» должна быть активной.
  • Проделайте ниже шаги чтобы активировать настройки. (Не Запуск сценария PowerShell).

Запуск сценария PowerShell активирует эту кнопку настройки с помощью команды, но я рекомендую воспользоваться этим способом, если у вас не получилось все по порядку. Пропустите этот шаг «Запуск сценария PowerShell», если что потом вернетесь к нему.

Запуск сценария PowerShell

Чтобы обойти эту ошибку, вам нужно отредактировать некоторые разрешения в разделе «Служба компонентов» ключа RuntimeBroker. Прежде чем перейти к модификации, вам нужно запустить скрипт, который поможет вам изменить разрешения. Дальше поймете зачем мы это делали.

Шаг 1. Нажмите сочетание кнопок Win+X и выберите Windows PowerShell (администратор).

Шаг 2. Загрузите файл с кодом ниже. Разархивируйте скаченный архив, в нем содержится текстовый файл с кодом.

Шаг 3. Вставьте скаченный скрипт с файла в командную строку PowerShell.

PowerShell-задать-команду.jpg

Разрешение-на-запуск-и-активацию.jpg

  • 1-2. Скопируйте «Код приложения» в службах и компонентах, компонента RuntimeBroker.
  • 3. Откройте редактор реестра, нажмите «правка» > «найти» и вставьте код приложения, который до этого скопировали. Нажмите правой кнопкой мыши на найденным ключе в реестре и выберите «Разрешения«.
  • 4. далее в окне нажмите «Дополнительно«.

123.jpg

  1. В окне сверху «Владелец» нажмите «Изменить«.
  2. В следующим окне нажмите внизу «Дополнительно«.
  3. Нажмите справа «Поиск» и ниже со списка выберите «Администраторы«.

Добавить-расширенные-права-пользователей.jpg

  • Теперь переходим обратно в компоненты к свойству файла RuntimeBroker и мы видим, что теперь кнопка «настроить» стала интерактивной.
  • Выскочит предупреждающее окно нажмите Удалить, если вам не мог код сценария powerShell.
  • Нажмите Отмена, если вам помог код сценария powerShell.
  • Нажмите Изменить напротив кнопки «настроить» в графе «разрешения на запуск и активацию».

Настройка-рунтаймброкер-компонента.jpg

Добавим группы система и local service.

  1. В окне, где имеются учетные записи нажмите «Добавить«.
  2. Ниже кнопка «Дополнительно«.
  3. Нажмите «Поиск» с боку.
  4. Найдите локальную службу LOCAL SERVICE и нажмите OK.

Добавить-локальную-службу.jpg

  • Аналогичным способом, что описан выше добавьте «Система«.

Добовление-системы.jpg

  • Теперь у вас появились две группы система и local service, нажмите на каждую из них и поставьте галочки в пунктах «Локальный запуск» и «Локальная активация».

Перезагрузите компьютер, ноутбук и код события 10016 Ошибка DistributedCOM должен пропасть.

Добавление-прав-доступа.jpg

Смотрите еще:

  • DISM ошибка 87 в командной строке Windows 
  • Ошибка 0x8000ffff при восстановлении системы Windows 10
  • Как исправить Ошибку 0xc1900101 0x20004 при установке Windows 10
  • Как исправить ошибки обновлений Windows 10
  • Как узнать IP-адрес компьютера с помощью PowerShell Windows

comments powered by HyperCommentsПолитика конфиденциальности

Ошибка 10016 под именем «DistributedCOM error» — частая проблема на операционной системе Windows 10. Протокол DCOM – расширение, поддерживающее связь между несколькими объектами по сети.

Ошибка часто возникает при каждом запуске операционной системы. Часто из-за нее вылетают игры. В «Журнале событий» пользователь видит десятки сообщений об этой ошибке.

В этой статье мы разберемся, как избавиться от ошибки 10016 стандартными средствами «десятки».

Содержание

Исправление ошибки DistributedCOM

Проблема указывает на то, что какое-то приложение блокирует подключение к COM-серверу. Для устранения ошибки будем использовать журнал событий и редактор реестра.

Рекомендуем перед описанными ниже действиями сделать как минимум резервную копию реестра, а лучше – создать точку восстановления. В этой статье вы сможете прочитать инструкцию, как сделать возврат к точке восстановления. Эти шаги необходимы, если что-то пойдет не так в дальнейших операциях.

Журнал событий

Откроем журнал событий и найдем в нем нашу ошибку. Приложение называется «Просмотр событий». Вводи название в поиск – и открываем найденную утилиту.

Здесь нас интересует код события, заключенный в фигурные скобки. Он нам понадобится для следующего шага. Скопируйте его (комбинация клавиш Ctrl+C).

Подробнее о комбинации горячих клавиш в Windows 10 вы можете прочитать подробный обзор.

Редактор реестра

Заходим в редактор реестра (как это сделать – читайте здесь). В редакторе нажимаем клавиши Ctrl+F и вводим код, скопированный в журнале событий. Кликаем «Найти далее». В левой части редактора найдется раздел реестра под именем введенного кода. Нажимаем на раздел правой кнопкой мышки и выбираем пункт «Разрешения».

Далее в появившемся окне выбираем иконку «Дополнительно».

Нам нужно изменить владельца. Кликаем на активную ссылку «Изменить».

Выбираем меню «Дополнительно» и в новом окне кликаем на «Поиск».

На секунду вернемся в журнал событий. В описании ошибки был указан пользователь.

Его нам и нужно найти в списке пользователей, которые мы нашли в предыдущем окне. Кликаем по нему два раза левой кнопкой, затем нажимаем «ОК» в окне выбора. Владелец сменился. Не забудьте также установить маркер напротив «Полный доступ» в самом первом окне разрешений.

Службы компонентов

Нам нужно перейти к следующему системному решению – в редактор служб компонентов. Но для начала вернемся в редактор реестра. Нам нужно запомнить значение параметра, которое находится в разделе с кодом нашей ошибки. У каждого пользователя значения могут отличаться.

Далее находим в поиске «Службы компонентов» и запускаем редактор от имени администратора.

Переходим по пути, указанному на скриншоте.

Нам нужно выбрать из списка то значение, которое мы видели в редакторе реестра. Кликаем на него правой кнопкой мышки и выбираем из контекстного меню «Свойства».

Заходим во вкладку «Безопасность», устанавливаем маркер напротив «Настроить» и нажимаем иконку «Изменить». Выбираем пользователя и устанавливаем указанные на скриншоте маркеры активации. Нажимаем «ОК» для сохранения изменений. Рекомендуем после этого перезагрузить компьютер.

Подводим итоги

Ошибка 10016 DistributedCOM error исправляется на Windows 10 штатными средствами ОС, но очень неудобно, процесс занимает достаточно времени.

В принципе, если ошибка не доставляет пользователю никаких неудобств, кроме сообщений в журнале событий, ее можно не исправлять. Если же вылетают игры, наблюдается сбой в приложениях – рекомендуется воспользоваться инструкцией выше.

Еще много полезного об ошибках на Windows 10:

Ошибка ntdll.dll.

Ошибка регистрации comcntr.dll.

CLR20r3 ошибка при запуске программы.

Ошибка bootmgr is missing на Windows 10.

Ошибка 0x8007042c при обновлении Windows 10.

Иногда при запуске компьютера в журнале событий Windows 10 можно увидеть ошибку с кодом события 10016, вызванную службой DistributedCOM (DCOM). Этот компонент используется практически во всех версиях ОС Windows, поэтому ошибка может возникнуть на любом компьютере. В большинстве случаев она никак не нарушает работу ПК, но может мешать тем, что вызывает появление уведомлений при каждом старте системы. Что это за ошибка DistributedCOM 10016 в Windows 10 и как ее исправить, я расскажу далее в своём обзоре.

Почему появляется ошибка DistributedCOM 10016?

Найти ошибку DistributedCOM 10016 можно в службе «Просмотр событий», которая открывается через раздел «Администрирование» панели управления, утилитой «Выполнить» или командой eventvwr в командной строке. Служба отслеживает все, что происходит с системой и установленными приложениями, а также планирует выполнение задач в будущем.

Ошибка DistributedCOM 10016 в Windows 10 появляется в журнале при старте системы

Ошибка DistributedCOM 10016 в Windows 10 — это системное событие, поэтому находится она в пункте «Система» раздела «Журналы Windows» в меню слева. Справа расположен список событий, в котором и можно найти ошибку — она помечена красной иконкой с восклицательным знаком. В верхнем окне справа отмечается основная информация о событии — точное время, код и источник. В нижнем окне служба показывает всю информацию об ошибке, которой достаточно для ее решения, но разобраться в этих данных может быть сложно для начинающего пользователя.

Об ошибке DistributedCOM 10016 журнал говорит, что причиной ее является невозможность запуска конкретного приложения службой DCOM из-за отсутствия у системы разрешения на это. Ниже указан код приложения (ADDID) в шестнадцатеричной системе. Какой программе соответствует этот код, в данном случае не важно, ее название не потребуется для исправления ошибки 10016.

Еще ниже указано, какому пользователю нужно разрешение на запуск приложения. Как правило, при возникновении ошибки DCOM 10016 это пользователь SYSTEM. Таким образом, в том, как исправить ошибку DistributedCOM 10016 в Windows 10, нет особых сложностей — нужно найти соответствующее приложение и предоставить системе права на его запуск.

Как исправить ошибку DCOM 10016?

Сначала надо дать себе права на изменение разрешений службы DistributedCOM.

Право на изменение разрешений DCOM получается через реестр

Делается это через реестр:

  1. Откройте редактор реестра, нажав Win+R и набрав regedit в окне «Выполнить».
  2. Найдите пункт «Найти» в разделе «Правка» меню редактора.
  3. Скопируйте 16-ричный код проблемного приложения из сообщения об ошибке DistributedCOM 10016 в поле поиска.
  4. Нажмите на него правой кнопкой мыши и выберите «Разрешения», затем — «Дополнительно».
  5. Смените владельца на группу «Администраторы».
  6. Вернитесь в меню «Разрешения», выберите группу «Администраторы» и поставьте галку напротив пункта «Полный доступ» в окне разрешений.

Теперь у вас есть право дать службе DCOM разрешение на использование проблемного приложения. Делается это через утилиту «Службы компонентов», которая открывается командой dmconfig в окне «Выполнить».

В «Службах компонентов» DCOM выдается право на использование приложения

После открытия утилиты порядок действий таков:

  1. Последовательно раскройте разделы «Службы компонентов», «Компьютеры», «Мой компьютер» в меню слева и выберите пункт «Настройка DCOM».
  2. В списке справа найдите проблемное приложение по его 16-ричному коду.
  3. Кликните по нему правой кнопкой и выберите «Свойства».
  4. Перейдите на вкладку «Безопасность» и нажмите «Изменить» в блоке «Разрешения на запуск и активацию».
  5. Выберите пользователя SYSTEM или СИСТЕМА и разрешите ему локальную активацию приложения. Если этого пользователя нет, добавьте его, нажав «Добавить».
  6. Примените изменения и закройте все окна.

После перезагрузки компьютера новые опции активируются. Так как исправить ошибку DistributedCOM 10016 на Windows 10 достаточно один раз, в дальнейшем она перестанет появляться.

Используемые источники:

  • https://mywebpc.ru/windows/event-id-10016-distributedcom-windows-10-error/
  • https://public-pc.com/kak-ispravit-oshibku-10016-v-windows-10/
  • https://lifehacki.ru/oshibka-distributedcom-10016-v-windows-10-kak-ispravit/

0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии

А вот еще интересные материалы:

  • Яшка сломя голову остановился исправьте ошибки
  • Ясность цели позволяет целеустремленно добиваться намеченного исправьте ошибки
  • Ясность цели позволяет целеустремленно добиваться намеченного где ошибка
  • Исправление ошибки 10016 windows 10
  • Исправление ошибки 0xc1900101 0x40017