В процессе эксплуатации систем на базе 1С:Предприятие 8.3 системные администраторы часто сталкиваются с необходимостью обновления платформы. Однако не всегда переход на новый релиз проходит гладко. Распространенной проблемой является сбой в работе фоновых заданий и механизмов обмена данными после установки новой версии. Еще более сложная ситуация возникает, когда попытка деинсталлировать проблемный релиз и вернуться к стабильной версии заканчивается ошибкой и автоматическим откатом (rollback) мастера установки. Разберем подробно, почему это происходит и как корректно очистить систему для восстановления работоспособности.
Когда штатный деинсталлятор Windows через «Панель управления» выдает неопределенную ошибку в середине процесса и начинает «откатывать» изменения назад, это свидетельствует о критическом препятствии, которое установщик не может обойти. Проанализируем основные причины такого поведения:
Агент сервера 1С:Предприятия может находиться в состоянии «Остановлена», но при этом её процесс или связанные с ней файлы могут быть заблокированы антивирусом, системой мониторинга или открытой консолью администрирования 1С.services.msc, служба помечается системой как удаленная, но фактически остается в реестре до полной перезагрузки ОС. Деинсталлятор, видя это противоречие, прерывает работу.dllhost.exe), мастер установки инициирует откат.Windows Installer (MSI) мешает корректному определению последовательности удаления файлов.Прежде чем приступать к повторной деинсталляции, выполним подготовительные действия. Выясним, действительно ли все процессы 1С завершены. Рассмотрим последовательность действий:
Остановим службу 1C:Enterprise 8.3 Server Agent через консоль управления службами. Если служба не останавливается или зависла в состоянии «Stopping», воспользуемся командной строкой от имени администратора:
taskkill /F /FI "IMAGENAME eq rphost.exe"
taskkill /F /FI "IMAGENAME eq rmngr.exe"
taskkill /F /FI "IMAGENAME eq ragent.exe"
Убедимся, что закрыты все окна консоли администрирования кластера и конфигураторы. После этого рекомендуется перезагрузить сервер, чтобы снять блокировки с системных веток реестра.
Если стандартный деинсталлятор продолжает выдавать ошибку, разберем метод ручного удаления службы сервера. Это позволит «обмануть» установщик и убрать конфликтующий объект из системы. Выполним команду:
sc delete "1C:Enterprise 8.3 Server Agent"
Важно: если на сервере установлено несколько версий платформы, имя службы может содержать номер версии или уникальный идентификатор. Проверим точное имя в свойствах службы. После удаления службы необходимо очистить ветку реестра, отвечающую за её параметры:
Найдем в реестре раздел HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services и удалим папку, соответствующую агенту сервера 1С. Также проанализируем ветку HKEY_CLASSES_ROOT\Installer\Products. Здесь нужно найти подраздел, где значение ProductName содержит «1C:Enterprise». Удаление этого подраздела позволит запустить установку «чисто», так как система перестанет считать данный релиз уже установленным.
Часто после перехода с релиза 8.3.9 на 8.3.13 (или другие более поздние версии) фоновые задания перестают работать из-за изменения структуры кэша и файлов конфигурации кластера. Посмотрим, как решить эту проблему при возврате на старую платформу.
Главная причина сбоев — содержимое папки srvinfo (по умолчанию находится в C:\Program Files\1cv8\srvinfo). В ней хранятся файлы .lst, описывающие структуру кластера. При смене версий формат этих файлов может меняться. Рассмотрим алгоритм действий при откате:
srvinfo.Проанализируем ситуацию, упомянутую в обсуждении: серверная часть часто устанавливается 64-битной, в то время как клиенты и некоторые внешние компоненты остаются 32-битными. Это критично для работы comcntr.dll.
Если после манипуляций с версиями перестал работать обмен через COM-соединение, необходимо вручную перерегистрировать библиотеку нужной разрядности. Разберем пример для 64-битной системы:
regsvr32 "C:\Program Files\1cv8\8.3.X.XXXX\bin\comcntr.dll"
Помните, что для корректной работы торгового оборудования 1С рекомендует использовать 32-битный клиент, так как драйверы многих устройств (сканеры, кассы) до сих пор не имеют стабильных 64-битных версий. Убедитесь, что при деинсталляции одной версии вы не повредили общие компоненты, необходимые для работы другой разрядности.
Если удаление новой версии все же не удается, а работать нужно срочно, рассмотрим вариант сосуществования двух платформ на одном сервере. Для этого выполним следующие настройки:
instsrv.exe или ручное создание укажем альтернативные порты.1540 (agent), 1541 (manager), 1560:1591 (range). Для новой службы назначим, например, 1640, 1641 и так далее.ImagePath для новой службы добавим ключ -port 1640 -regport 1641 -range 1660:1691.Это позволит запустить старый сервер параллельно с проблемным новым, обеспечив доступ пользователей к базам, пока решается вопрос с полной очисткой системы от некорректно установленного релиза.
Выясним еще один важный нюанс: права пользователя, под которым запускается установка и сама служба. Проверьте следующее:
Пользователь, выполняющий деинсталляцию, должен обладать правами Локального администратора. Сама служба 1С (обычно USR1CV8) должна иметь полные права на папку установки и папку srvinfo. Если после переустановки платформы фоновые задания не стартуют, проверьте, не сбросились ли права на временные папки профиля пользователя службы. Часто именно отсутствие возможности записать временный файл блокирует выполнение регламентных операций в 1С.