Ошибка сбой при удаленном вызове процедуры - причины ошибки, решение проблемы

Ошибка сбой при удаленном вызове процедуры - причины ошибки, решение проблемы

Служба удалённого вызова процедур Windows (она же RPC или Remote Procedure Call) управляет протоколом, позволяющим программам выполнять свои действия на других компьютерах общей сети так же, как они выполнялись бы на данном компьютере — без необходимости разбираться в тонкостях подключения.

Протокол оказался очень удобным на практике: последние версии Windows используют его и для внутреннего взаимодействия программ, находящихся на одном устройстве. От его правильной работы зависят службы системного реестра, «Диспетчер устройств» и даже приложение File Explorer, отвечающее за корректное отображение системных окон и их свойств.

Что означает ошибка «Сбой при удалённом вызове процедуры»

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

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

Убедимся для начала, что служба и все компоненты, на которые она полагается, включены и работают в штатном режиме. Затем попробуем убрать некоторые потенциальные программные несовместимости.

Проверка служб

Если сбой при удалённом вызове процедуры происходит на Windows 7, открываем список служб таким образом: «Пуск» → Выполнить → пишем services.msc, жмём Enter. В Windows 10 название службы можно ввести в строку поиска на Панели задач.

Откроется достаточно длинное окно служб, запущенных на компьютере. Нас интересуют четыре службы:

  • Удалённый вызов процедур (на английском служба будет называться «Remote Procedure Call (RPC)») — в статусе службы должна быть пометка «Работает», а тип запуска — «Автоматически». Если там стоит что-то другое, нажмите на строчку два раза — в появившемся окне будет возможность включить процедуру и выбрать автоматический тип загрузки. Если выставить значения не получается, проверьте сначала два следующих процесса ниже.
  • Модуль запуска процессов DCOM-сервера (DCOM Server Process Launcher) — должен быть включён, тип запуска «Автоматически».
  • Сопоставитель конечных точек RPC (RPC Endpoint Mapper) — аналогично.
  • Локатор удаленного вызова процедур (RPC) (Remote Procedure Call (RPC) Locator) — здесь тип запуска должен быть «Вручную».

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

Редактирование системного реестра

Редактор реестра открывается по тому же принципу, что и список служб, но написать нужно будет слово regedit. Находим там ветку HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services. На всякий случай перед началом редактирования жмём на неё правой кнопкой и экспортируем — если что-то пойдёт не так, текущее состояние реестра можно будет восстановить двойным щелчком по экспортированному файлу.

В HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services вносим следующие поправки:

  • в подразделе DcomLaunch ищем ключ Start, щёлкаем на него два раза, выставляем значение 2;
  • в подразделах RpcEptMapper и RpcSs — аналогично;
  • в подразделе RpcLocator в ключе Start должно стоять значение 3

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

Проверка на несовместимость ПО

Если все службы работают как обычно (и не выключились сами после перезагрузки, проверьте), имеет смысл поискать и удалить несовместимое программное обеспечение. Прежде всего — загрузитесь в безопасном режиме: откройте службу msconfig (через «Выполнить» или строку поиска, в зависимости от системы) и на вкладке «Загрузка» поставьте галочку на соответствующей опции. После следующей перезагрузки система включится без обычных программ автозагрузки и с минимальным набором драйверов — проверьте, появляется ли ошибка в таком режиме. Если нет, «Автозагрузку» нужно будет почистить.

В Windows 7 это осуществляется через всё ту же службу msconfig. В Windows 10, в принципе, можно зайти туда же, но вас перенаправят в Диспетчер задач, управляющий этой функцией на новой ОС. Диспетчер задач можно вызвать клавиатурной комбинацией Ctrl + Alt + Del.

Перейдите на вкладку «Автозагрузка» и уберите оттуда все программы. Затем добавляйте обратно по одной и перезагружайтесь после каждого добавления, пока не найдёте программу, провоцирующую конфликт. Часто это бывают антивирусы и программы резервного копирования файлов (Comodo BackUp и т. п.). Конфликтующие программы рекомендуется деинсталлировать или хотя бы использовать аналоги, не вызывающие проблем.

Проверка и ремонт системных файлов

Для решения проблем с системными файлами можно использовать утилиты SFC и DISM.

Запустите командную строку от имени администратора: «Пуск» → Стандартные → Командная строка (Windows 7) или введите cmd в строку поиска на Панели задач (Windows 10). Для запуска от имени администратора щёлкните на название программы правой кнопкой мыши и выберите соответствующую опцию контекстного меню.

В появившемся чёрном окне введите для начала:

sfc /scannow

Эта команда проверит основные системные файлы и попытается восстановить их, если увидит, что с ними что-то не так.

На Windows 10 доступна утилита DISM (Deployment Image Servicing and Management), позволяющая отремонтировать файлы, если вдруг не работает sfc.

На выбор есть две команды:

  • DISM /Online /Cleanup-Image /ScanHealth — проведёт сканирование системных файлов и доложит о возможных ошибках.
  • DISM /Online /Cleanup-Image /RestoreHealth — попытается эти ошибки исправить.

Вводим команды точно так же, как sfc, не забываем про пробелы перед каждым «/». После завершения ремонта — перезагружаемся.

Если «Сбой при удалённом вызове процедуры» возникает и здесь (обычно с кодом ошибки 1726) — проверьте, работают ли все службы RPC, как описано выше. Может также помочь временное отключение службы Windows Search.

Если ничего не помогает

Крайний вариант перед переустановкой системы — попробовать создать нового пользователя. В Windows 10 опция запрятана достаточно далеко: «Пуск» → Параметры → Учётные записи → Семья и другие пользователи. Все системные настройки для нового пользователя будут выставлены по умолчанию, и конфликт ПО, если он был, исчезнет. В Windows 7 пользователя можно создать здесь: «Пуск» → Панель управления → Учётные записи пользователей.

Если же проблема не исчезает даже на новой учётной записи, скорее всего, дело в дефекте RAM. Память можно проверить штатным средством Windows — службой mdsched. Проверка может занимать несколько часов. Ошибки памяти, если они есть, после проверки никуда не исчезнут: придётся сбрасывать «разгон», если что-то меняли, а в худшем случае — менять оперативную память.

Помогла ли вам данная статья устранить назойливую ошибку службы RPC? Может быть, вам помог какой-то свой способ, не описанный здесь? Делитесь своими мыслями в комментариях — мы обязательно вам ответим.

12:28
1065
Нет комментариев. Ваш будет первым!