Каждый, кто администрирует серверы 1С, сталкивался с ситуацией: установили новую версию платформы, открываете оснастку «1CV8 Servers» — а она не показывает сеансы или выдаёт ошибку. Причина чаще всего в том, что не зарегистрирован radmin.dll или не выполнен RegMSC.cmd из папки bin нужной версии. Вручную искать эти файлы, открывать командную строку от администратора, прописывать regsvr32 — действие вроде бы простое, но когда версий пять или шесть, а вы часто переключаетесь между ними, это превращается в рутину.
Данный скрипт избавляет от этой рутины. Он ищет все папки платформы в C:\Program Files\1cv8 (за исключением служебных папок srvinfo, common, conf и одной конкретной версии 8.3.9.2170, если она вам не нужна). Для каждой найденной папки он проверяет, что внутри есть подпапка bin, и ищет там либо файл RegMSC.cmd (для новых версий, где регистрация делается через командный файл), либо radmin.dll (для старых версий). Найденные пути он выводит в таблицу, а рядом — порты, на которых в данный момент работают службы агента сервера для данной платформы. Порты извлекаются из параметров запуска служб 1С (через WMI-запрос к службам с именем, начинающимся на 1C:Enterprise или содержащим Server Agent).
Двойной клик по строке делает главное: если вы выбрали radmin.dll — скрипт запускает regsvr32 /s от имени администратора и тихо регистрирует компоненту. Если вы выбрали RegMSC.cmd — он просто запускает этот командный файл (тоже с правами администратора). После регистрации скрипт ищет открытые окна MMC с заголовком «1CV8 Servers», принадлежащие текущему пользователю, и закрывает их, а затем открывает свежую оснастку заново. Это нужно, чтобы изменения вступили без ручного перезапуска консоли.
Всё управление — через простую форму с одной кнопкой «Вывести список существующих radmin» и таблицей, в которой можно кликать по строкам. Окно консоли скрыто, так что пользователь видит только графический интерфейс.
Что важно знать:
-
Скрипт требует прав администратора для регистрации компонент и перезапуска служб (автоматически перезапускается с UAC).
-
Поиск ведётся только в папке
C:\Program Files\1cv8(для 64-битных систем). Если платформа установлена в другое место, пути нужно поправить в коде. -
Исключены папки
srvinfo,common,confи версия 8.3.9.2170 — это можно при необходимости изменить в функцииSearchAllDll. -
Порты показываются только для тех платформ, для которых уже запущены службы агента. Если служб нет, то поле «Порты» будет пустым.
-
Перезапуск MMC происходит только если оснастка была открыта. Если не была — скрипт просто запускает её заново в скрытом окне (чтобы не мешать, но при желании можно убрать
-WindowStyle Hidden).
Скрипт не требует установки дополнительных модулей, работает из коробки на Windows Server и клиентских Windows с установленной платформой 1С. Он не меняет файлы, не трогает базы, не влияет на работу сервера — только регистрирует компоненты для консоли администрирования.
Итог: экономия времени, минимум кликов, прозрачность — вы всегда видите, что и для какой версии вы зарегистрировали. Подойдёт как для ежедневной работы, так и для быстрых проверок после установки обновлений.
Вступайте в нашу телеграмм-группу Инфостарт