MMC не удалось создать ошибку оснастки после изменения machine.config

Мне было трудно определить, почему мой компьютер с Windows 10 Enterprise внезапно не смог запустить Event Viewer (плагин MMC).

Он запускался, но выдавал следующее сообщение: MMC не удалось создать оснастку. Возможно, оснастка была установлена ​​неправильно. Имя: Средство просмотра событий CLSID: FX: {b05566ad-fe9c-4363-be05-7a4cbb7cb510}

Я перепробовал все обычные каналы и предложения, которые появились в результате поиска в Google, но безрезультатно. Кто-то на работе предположил, что проблема может быть вызвана недавним изменением моего файла machine.config. Оказывается, он был прав. Удалив следующую строку из моего machine.config, MMC теперь может работать легкомысленно, как козёл:

Я удалил узел <machineSettings maxTimeout="00:00:00"/> из узла system.transactions, и теперь средство просмотра событий работает отлично.

У кого-то еще при переполнении стека были аналогичные проблемы, и он «решил» их, взорвав всю папку Microsoft.NET и заменив ее «рабочей машиной» (Windows Server 2008 R2: не удается получить доступ к средству просмотра событий, диспетчеру серверов, IIS7 CLSID: FX: {18ea3f92-d6aa-41d9-a205- 2023400c8fbb}), но это может вызвать проблемы, если на машинах установлены разные платформы .NET.

Этот пост, во-первых, является попыткой помочь другим, столкнувшимся с этой проблемой, а во-вторых, пингом, чтобы узнать, может ли кто-нибудь объяснить, почему .NET machine.config изменяет поведение подключаемых модулей MMC.

Пожалуйста, поправьте меня, если я ошибаюсь, но я думал, что средство просмотра событий (все еще версия 1.0) было построено на C++, поэтому для него не требовался бы файл machine.config из библиотеки CLR. Почему же тогда изменение в файле machine.config или установка любой версии .NET Framework может вызвать проблему (например, "плагины MMC (например, EventViewer ) не работает после установки .NET Framework V4.5.2")?

Если это имеет значение, я использую .NET framework v4.0.30319. Измененный файл machine.config находится по пути C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Config.


person Paurian    schedule 26.06.2018    source источник


Ответы (1)


Одно из возможных исправлений для «MMC не удалось создать оснастку». ошибка заключается в проверке XML-файла .NET machine.config. В моем случае удаление тега <machineSettings maxTimeout="00:00:00"/> решило проблему. Этот тег был добавлен нашим архитектором, чтобы обойти тайм-аут транзакции SQL, чтобы внутренний установщик выполнялся до завершения.

Было бы неплохо знать, почему изменение в файле machine.config будет иметь значение для плагина просмотра событий или консоли управления Microsoft.

person Paurian    schedule 26.06.2018