- Ошибка DistributedCOM 10016 в Windows: Параметры разрешений для приложения не дают разрешения локальной активации
- DCOM event ID 10016 регистрируется в Windows
- Симптомы
- Причина
- Обходной путь
- Разбираемся с ошибкой 10016 в Windows 10: причины и устранение
- Ошибка 10016 Windows 10: как исправить
- Предоставление разрешений
- Скрываем ошибку
- ошибка 10016
- Ошибка 10016 в Windows 10 и как ее исправить
- Ошибка 10016 в Windows 10 и как ее исправить
Ошибка DistributedCOM 10016 в Windows: Параметры разрешений для приложения не дают разрешения локальной активации
В этой заметке я покажу, как исправить ошибку c Event ID 10016 от источника DistributedCOM на компьютере с Windows 10 / Windows Server 2012 R2. Ошибка DCOM 10016 довольно часто встречается как в клиентских, так и в серверных версиях Windows, начиная еще со времен Windows XP и исправляется она одинаково, независимо от редакции Windows.
Проблема проявляется следующим образом: в журнале событий системы при загрузке компьютера или попытке запуска/установки приложения появляется следующая ошибка:
Log Name: Система
Source: DistributedCOM
Event ID: 10016
Level: Ошибка
User: SYSTEM
Описание: Параметры разрешений для конкретного приложения не дают разрешения Локальный Запуск для приложения COM-сервера с CLSID <1ccb96f4-b8ad-4b43-9688-b273f58e0910>и APPID
В англоязычных версиях Windows описание ошибки такое:
The machine-default permission settings do not grant Local Activation permission for the COM Server application with CLSID
<000209ff-0000-0000-c000-000000000046>and APPID Unavailable to the user IIS APPPOOL\appIISPool SID (S-1-5-82-3351576649-1006875745-771203599-42452693-1279824824) 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.
Судя по описанию ошибки: некий пользователь (например, IIS Apppool) или система (NT AUTHORITY\система) пытается запустить некий компонент COM с помощью инфраструктуры DCOM и не может этого сделать из-за отсутствия права «Локальный Запуск» или «Локальная активация» (Local Activation Permission). В коде ошибки содержатся только коды классов COM компонента и приложения. Попробуем определить, какому именно приложению принадлежит идентификатор и предоставить права, необходимые для его запуска.
Из описания события необходимо скопировать идентификаторы CLSID и APPID. В моем случае это
(в некоторых случаях идентификатор приложения может быть не указан — APPID Unavailable).
Также обратите внимание каких разрешений не хватает (Local Activation permission) и для какой учетной записи (NT AUTHORITY\SYSTEM или IIS APPPOOL\appIISPool SID — S-1-5-82-3351576649-1006875745-771203599-42452693-1279824824).
DCOM event ID 10016 регистрируется в Windows
В этой статье предоставляется обходное решение для решения события 10016, которое регистрируется в Windows при доступе к компонентам DCOM.
Оригинальная версия продукта: Windows 10 — все выпуски, Windows Server 2019, Windows Server 2016
Исходный номер КБ: 4022522
Симптомы
На компьютере с Windows 10, Windows Server 2019 или Windows Server 2016 в журналах событий системы регистрируется следующее событие.
Причина
Эти события 10016 записывают, когда компоненты Майкрософт пытаются получить доступ к компонентам DCOM без необходимых разрешений. В этом случае такое поведение ожидается и по проекту.
Реализован шаблон кодирования, в котором код сначала пытается получить доступ к компонентам DCOM с одним набором параметров. Если первая попытка не увенчалась успехом, она снова пытается использовать другой набор параметров. Причина, по которой она не пропускает первую попытку, заключается в том, что существуют сценарии, в которых она может быть успешной. В этих сценариях предпочтительнее.
Обходной путь
Эти события можно безопасно игнорировать, так как они не влияют на функциональность и являются дизайном. Это рекомендуемое действие для этих событий.
При желании продвинутые пользователи и ИТ-специалисты могут подавить эти события из представления в viewer event. Для этого создайте фильтр и вручную отредактировать XML-запрос фильтра, аналогичный следующему:
- param4 соответствует CLSID приложения COM Server.
- param5 соответствует appID.
- param8 соответствует sid контекста безопасности.
Все они записывают в журналы событий 10016.
Дополнительные сведения о ручном построении запросов просмотра событий см. в см. в обзоре Consuming Events.
Кроме того, эту проблему можно решить, изменяя разрешения на компоненты DCOM, чтобы предотвратить вход этой ошибки в журнал. Однако этот метод не рекомендуется, так как:
- Эти ошибки не влияют на функциональные возможности
- Изменение разрешений может иметь непредвиденные побочные эффекты.
—>
Разбираемся с ошибкой 10016 в Windows 10: причины и устранение
Не все ошибки в Windows 10 носят критический характер. Отыскав в журнале событий ошибку с кодом события 10016, ее можно проигнорировать, ничего страшного не произойдет.
Запись появляется, когда компоненты операционной системы обращаются к расширению DCOM, не имея соответствующих разрешений. Во второй раз запрос отправляется с иным набором атрибутов.
Кроме игнорирования ошибки, источником которой является DistributedCOM, можно вручную отключить ее регистрацию и отображение в журнале.
Ошибка 10016 Windows 10: как исправить
Устраняется проблема посредством предоставления службе нужных разрешений. Также можно отключить отображение ошибки в журнале.
Предоставление разрешений
Определяем службу, виновную в появлении проблемы, и предоставляем ей расширенные права.
- Через Пуск – «Средства администрирования запустите» компонент «Службы компонентов» от имени администратора.
2. Разверните ветку: «Просмотр событий» – «Журналы Windows».
3. Посетите раздел «Система» и к кликните по записи с кодом события 10016.
4. Скопируйте идентификатор приложения APPID: выделите его в окне ниже и зажмите Ctrl + C.
5. Запустите редактор реестра командой regedit. Выполните ее в командном интерпретаторе Win + R или поисковой строке.
6. Через пункт меню «Правка» или комбинацией клавиш Ctrl + F вызовите поиск.
7. Вставьте идентификатор с буфера обмена, отметьте флажком «Имена разделов» и запустите поиск.
8. Кликните по найденному разделу.
В правой части интерфейса увидите ключ «По умолчанию» со значением RuntimeBroker.
- Через контекстное меню объекта откройте окно «Разрешения».
10. Жмите «Дополнительно».
11. Кликните «Изменить» для открытия окна для замены владельца.
12. Жмите «Дополнительно».
13. Кликните «Поиск», выберите текущую учетную запись с правами администратора и сохраните изменения кнопкой «ОК» в этом и следующем окнах.
14. Отметьте «Заменить владельца подконтейнеров…» и сохраните изменения.
15. Разрешите учетной записи «Полный доступ» и сохраните параметры.
16. Переключитесь на «Службы компонентов», в одноименном разделе откройте «Компьютеры» – «Мой…» – «Настройка».
17. Откройте свойства записи RuntimeBroker (их может быть две) и сравните значение строчки «Код приложения» с CLSID, который ранее копировали и искали в реестре.
18. Во вкладке «Безопасность» кликните «Изменить» в первом разделе «Разрешение на запуск и активацию».
19. Как для ветки реестра (начиная с 10-го шага) замените владельца объекта на «СИСТЕМА» и откройте учетной записи полный доступ.
Обязательно перезагрузите компьютер.
Скрываем ошибку
Второй способ – выключение отображения ошибки с кодом 10016 DistributedCOM.
- В Службах компонентов откройте системный журнал в разделе «Просмотр событий».
- Справа в панели действий нажмите «Фильтр текущего журнала…».
3. Введите код исключения в соответствующее поле и сохраните изменения.
Нередко привилегий для замены владельца в Win 10 может не быть.
В таких случаях следуйте рекомендациям Microsoft – игнорируйте ошибку.
ошибка 10016
Параметры разрешений для конкретного приложения не дают разрешения Локально Запуск для приложения COM-сервера с CLSID
Windows.SecurityCenter.WscBrokerManager
и APPID
Недоступно
пользователю NT AUTHORITY\СИСТЕМА с ИД безопасности (S-1-5-18) и адресом LocalHost (с использованием LRPC), выполняемого в контейнере приложения Недоступно с ИД безопасности (Недоступно). Это разрешение безопасности можно изменить с помощью средства администрирования служб компонентов.
Параметры разрешений для конкретного приложения не дают разрешения Локально Запуск для приложения COM-сервера с CLSID
Windows.SecurityCenter.SecurityAppBroker
и APPID
Недоступно
пользователю NT AUTHORITY\СИСТЕМА с ИД безопасности (S-1-5-18) и адресом LocalHost (с использованием LRPC), выполняемого в контейнере приложения Недоступно с ИД безопасности (Недоступно). Это разрешение безопасности можно изменить с помощью средства администрирования служб компонентов.
Параметры разрешений для конкретного приложения не дают разрешения Локально Запуск для приложения COM-сервера с CLSID
Windows.SecurityCenter.WscDataProtection
и APPID
Недоступно
пользователю NT AUTHORITY\СИСТЕМА с ИД безопасности (S-1-5-18) и адресом LocalHost (с использованием LRPC), выполняемого в контейнере приложения Недоступно с ИД безопасности (Недоступно). Это разрешение безопасности можно изменить с помощью средства администрирования служб компонентов.
вопрос, как решить эту проблему если ключ приложения не отображается? и не нужно писать якобы эти ошибки на работу не влияют- именно из-за 10016 у меня постоянно перезагружается компьютер. Была такая же ошибка но с ключом приложения- исправил и компьютер работал нормально вплоть до новой 10016.
Ошибка 10016 в Windows 10 и как ее исправить
Привет друзья. Ошибки в Windows далеко не всегда носят критический характер. Программы при этом не завершаются в аварийном режиме. Операционная система не зависает и не падает в BSOD. И вообще, видимо ничего не происходит.
Сегодняшний пост ошибка 10016 в Windows 10 и как ее исправить? О том, что имели место сбои можно понять, только заглянув в Журнал событий. Как правило, такие сбои не приводят к негативным последствиям для самой Windows.
Но они могут доставлять пользователям определенный психологический дискомфорт. Что с их операционной системой что-то не в порядке. Примером такой неполадки является ошибка 10016. Которая часто встречается как в Windows 10, так и в Windows 8.1.
Ошибка 10016 в Windows 10 и как ее исправить
Обнаруживается она обычно случайно при просмотре сведений в Журнале событий. Так как внешне в большинстве случаев неполадка себя никак не проявляет.Источником ошибки является DistributedCOM, что указывает на нелады с системной службой DCOM.
Которая по какой-то причине не смогла запустить то или иное приложение. Чаще всего это происходит по причине отсутствия у пользователя SYSTEM нужных прав. Также эта ошибка вызывается отключением связанных служб.
Исправляется ошибка 10016 в Windows 10 предоставлением системе полных прав на COM-объект. Который она не может запустить. Чтобы определить объект, необходимо знать его APPID и CLSID COM-сервера.
Это не составляет особой проблемы, поскольку все данные указываются в описании самой ошибки. Итак, перейдем ближе к делу. Открыв приложение «Просмотр событий», выберите Журналы Windows > Система и отфильтруйте записи по коду 10016.
Выбрав нужную запись, кликните по ней дважды, дабы открыть окошко свойств. В описании ошибки будет указано, что: «Параметры разрешений для конкретного приложения не дают разрешения Локально Активация для приложения.…» и так далее.
При этом в описании также будет указан CLSID проблемного компонента и его APPID. Ниже будет указан и пользователь, в данном примере СИСТЕМА. Скопируйте этот самый APPID в буфер обмена.
Откройте командой regedit встроенный в Windows 10 редактор реестра. Выделите в левой колонке «Компьютер». Нажмите F3 и выполните поиск по именам разделов, указав в качестве основного аргумента скопированный APPID.
Отыскав раздел, обратите внимание на значение параметра по умолчанию и запомните его. Оно вам еще пригодится. У меня это COM — объект RuntimeBroker. У Вас это может быть другое приложение. Нажмите по найденному разделу ПКМ, выберите в меню «Разрешения».
Затем нажмите в открывшемся окошке разрешений для групп «Дополнительно».
После этого Вам нужно будет заменить текущего владельца учетной записью «Администраторы». Для этого нажмите ссылку «Изменить».
Далее в новом окошке выбора пользователя или группы нажмите «Дополнительно».
Найдите через поиск запись «Администраторы».
Заменив текущего владельца, установите галочку в пункте «Заменить владельца подконтейнеров и объектов».
Сохранив настройки и вернувшись в окошко разрешений для групп, выделите учетную запись «Администраторы». Предоставьте ей полные права (разрешения). Точно так же найдите в реестре раздел, соответствующий CLSID в описании ошибки 10016.
Проделайте с ним те же манипуляции по замене владельца на Администраторы с предоставлением полных разрешений. Половина дела сделано, осталось только изменить разрешения для самого COM-объекта. Которым, как уже было определено, является RuntimeBroker.
Откройте командой comexp.msc или dcomcnfg штатную оснастку «Службы компонентов». Разверните ветку вплоть до пункта «Настройки DCOM».
Найдите приложение RuntimeBroker и откройте его свойства. В Windows 10 таких приложений может быть два. Вам нужно то, в свойствах которого на вкладке «Общие».
Код приложения должен совпадать с APPID в описании ошибки 10016. Переключитесь в этом окошке свойств на вкладку «Безопасность».
В разрешениях на запуск и активацию нажмите «Изменить». Если при этом вы получите запрос на удаление нераспознаваемых записей разрешений, сразу удаляйте их. После этого в окошке разрешений нажмите «Добавить».
Найдите и добавьте пользователя СИСТЕМА, который также упоминался в описании ошибки. Предоставьте ему права на локальный запуск и на локальную активацию. После чего последовательно сохраните все настройки и перезагрузите компьютер.
Если всё сделано правильно, то ошибка 10016 в Windows 10 не должна больше вас тревожить. Но учтите, что все вносимые вами изменения в настройки, могут не самым лучшим образом сказаться на безопасности системы. Поэтому, если ошибка 10016 не сопровождается сбоем в работе программ и системы, старайтесь обходиться без них.