Несмотря на мощные современные компьютерные конфигурации и относительно стабильные операционные системы, практически каждый пользователь Windows последних версий сталкивался с внезапным появлением сообщения о том, что прекращена работа программы COM Surrogate. Почему возникают такие проблемы и как с ними бороться, читайте далее.
COM Surrogate (Windows 7) - что это такое?
Естественно, что при появлении сообщений подобного рода пользователь сразу задается вопросом по поводу вирусного воздействия и пытается в «Диспетчере задач» судорожно искать такой процесс с попыткой его остановки. К сожалению, это ни к чему не приводит, поскольку такого процесса там попросту нет. Но ведь в ошибке четко указана служба, в работе которой произошел сбой.
Сама служба Windows 7 COM Surrogate в ее оригинальном варианте большей частью ориентирована на исполнение компонентов COM+ в среде ISS (интернет-соединение, воспроизведение некоторых типов мультимедиа-файлов и т. д.). Но это только общий случай.
Почему появляется ошибка «Прекращена работа программы COM Surrogate»?
Суть проблемы сводится к тому, что некоторые программы, использующие стандартные библиотеки .NET, некорректно обращаются к ресурсам компьютера. Может наблюдаться «вылет» приложений в процессе работы, при старте или нормальное функционирование до определенного момента, при котором появляется неустранимая синтаксическая ошибка, вызывающая зацикливание выполнения кода (например, при попытке воспроизведения «битых» медиафайлов). Да еще и синий экран выскакивает.
С другой стороны, нередко отмечается, что программа COM Surrogate может не являться системным процессом, а вирусом, который под него маскируется. Его воздействие состоит в том, что потребление системных ресурсов начинает зашкаливать (загрузка процессора может доходить до 95-100%, хотя для стандартной службы, по идее, загрузка ЦП обычно не превышает 50% даже при условии ее некорректного функционирования).
Как узнать, что это не вирус?
Если по каким-то причинам пользователь получил сообщение о том, что прекращена работа COM Surrogate, для начала необходимо проверить, не вирус ли вызвал такую реакцию системы. За функционирование самой службы отвечает процесс dllhost, представленный в виде одноименного исполняемого EXE-файла.
Для начала следует открыть «Диспетчер задач», на вкладке процессов найти там указанную службу (их может быть несколько, в зависимости от количества запущенных приложений, использующих вышеописанные компоненты), и через ПКМ перейти к пункту открытия места хранения файла. Если это оригинальный процесс, будет указана папка System32 (для систем с архитектурой x86) или SysWOW64 (для 64-битных систем). Любое другое расположение сразу указывает на присутствие вируса.
Вопросы мультимедиа
Что касается мультимедиа, чаще всего проблемы с COM Surrogate наблюдаются при старте и закрытии проигрывателей (в основном KMPlayer), не говоря уже о воспроизведении поврежденных файлов.
Многие специалисты связывают это с наличием в системе устаревших кодеков из наборов K-Lite и The HDvid. Самым простым решением проблемы станет стандартное удаление этих пакетов (можно использовать раздел программ и компонентов в «Панели управления») с последующей установкой более свежей версии.
Устранение проблем с работой службы
Однако в большинстве случаев сбои в работе службы COM Surrogate можно устранить более универсальным методом. Для этого потребуется использовать раздел системы в «Панели управления», перейти к вкладке «Дополнительно» и нажать кнопку параметров.
Далее используется вкладка предотвращения выполнения данных, на которой задействуется строка включения DEP для всех служб и программ кроме выбранных. В окошке ниже через нажатие кнопки добавления службы необходимо указать полный путь к файлу dllhost и сохранить изменения, после чего перезагрузить систему.
Если это не помогло, используйте онлайн-восстановление системы. Сначала в командной консоли, запущенной от имени админа, вводится команда сканирования (DISM.exe /Online /Cleanup-image /ScanHealth), а затем производится непосредственно восстановление (DISM.exe /Online /Cleanup-image /RestoreHealth).
Удаление вируса
Но, как уже было сказано, COM Surrogate может оказаться и вирусом. Если это действительно так (смотрим местоположение файла), а проверка антивирусным сканером ничего не дала, для начала перегружаем систему в безопасном режиме и используем любое средство проверки. Неплохо помогает Microsoft Security Essentials с установленным особым режимом сканирования.
Если удалять угрозу в ручном режиме, необходимо использовать редактор реестра (regedit), задать поиск с вводом в качестве значения {AB8902B4-09CA-4bb6-B78D-A8F59079A8D5}, а найденный раздел полностью удалить. После этого следует стандартная перезагрузка.
На всякий случай желательно проверить надстройки браузера, а также отследить путь к исполняемому файлу (он должен заканчиваться только расширением EXE). Если в конце дописано что-то еще, все это нужно удалить и сохранить изменения.
Чего делать не стоит ни в коем случае?
Некоторые пользователи при появлении сбоев в работе службы наивно полагают, что от них можно избавиться путем завершения всех процессов dllhost с удалением одноименного файла из его оригинального расположения. Завершите процессы – зависнут использующие их приложения. Удалите файл – система вообще перестанет работать. Завершить оригинальный процесс можно только в том случае, если все программы закрыты (но процесс все равно активен). А вот удалением файла заниматься нельзя. Это вызовет такое количество дополнительных ошибок, что иногда помочь сможет только полная переустановка системы.
Краткий итог
Как видим, проблемы с данной службой можно встретить достаточно часто. Конечно, в большинстве своем они связаны с мультимедиа, реже – с интернетом, когда браузеры начинают зависать. Для устранения проблем, если это действительно относится к воспроизведению видео или аудио, лучше применить указанные методики, для всех остальных случаев придется использовать исключения для службы DEP.