Изменение служб производится с помощью WinAPI, т.е. "родными" средствами Windows.
В первую очередь, не забываем, что программу надо запускать от имени Администратора, иначе операционная система не даст ничего сделать.
Сразу при запуске отображается список уже зарегистрированных служб сервера 1С с указанием их состояния, основного рабочего порта и каталога файлов кластера.
Пока пользователь не выделит никакую строку — доступна будет только кнопка «Добавить новую службу», по которой откроется окно заполнения необходимых параметров.
Но вбивать все заново ведь лень, поэтому проще выделить уже существующую службу и скопировать ее (кнопка «Добавить» изменится на «Скопировать»).
После нажатия «Скопировать» открывается следующее окно:
Но не торопитесь сразу жать «Сохранить изменения», текущие параметры принадлежат уже существующей службе и приложение выдаст соответствующее сообщение.
Необходимо поменять как минимум:
1) Отображаемое имя службы — операционная система контролирует уникальность этих имен
2) Каталог файлов кластера — две службы не могут и ни в коем случае не должны работать с одним каталогом. Укажите новое, пусть и несуществующее имя, служба сама создаст каталог при запуске (если, конечно, у нее будет достаточно прав)
3) Рабочие порты — у каждой службы 1С они должны быть уникальны. Проще всего щелкнуть «+1000» пару раз и программа увеличит на 1000 все четыре необходимые значения.
Галку по отладке ставите исходя из потребностей.
Также нужно указать учетные записи для работы службы — либо работа от имени локальной системы, либо указываете параметры конкретного доменного или локального пользователя Windows.
Нажимаем «Сохранить изменения».
Если операция завершится успешно, то служба добавится в список:
Можем теперь ее запустить — выделяем и жмем внизу «Запустить»
Служба больше стала не нужна?
Выделяем и жмем «Удалить выделенную службу».
Программа попросит подтвердить удаление и затем выполнит его.
Понятно, что инструмент далеко не повседневной необходимости, но, возможно, все же сохранит кому-нибудь драгоценные минуты жизни.
Замечания, предложения и конструктивную критику оставляйте в комментариях.
Исходные коды
Актуальная версия всегда доступна на github — https://github.com/alekseybochkov/ServiceInstaller1C/
Для работы с исходными кодами требуется Visual Studio 2024 с поддержкой Visual Basic (кстати версия Visual Studio 2024 Community Edition бесплатна!).
Опубликовано по лицензии GNU GPL — https://ru.wikipedia.org/wiki/GNU_General_Public_License
Я файл не скачивал, но идея мне понравилась. Сам однажды потерял почти день добавляя и удаляя это чудо… (порт оказался занят…)
Если бы он еще перед записью проверял, что данные порты незаняты другой службой, а то стандартными средствами — «геморой».
полезная вещь, но службу переустанавливаю редко, поэтому скачивать не буду.
Особа полезно иметь возможность быстро включить-выключить отладку.
—
Иногда так паришся с отладкой кода на стороне сервера
в этих долбанных НЕДОУПРАВЛЯЕМЫХ ФОРМАХ !!!
—
А на-горячую, не убивая юзверей, это можно сделать ???
(1) — попробую позже добавить проверку портов.
(3) — без перезапуска службы отладку включить/отключить нельзя.
(3)(4)
Жалко с отладкой то как получается.
А «Отладка» — это свойство всего кластера серверов ?
Или можно замутить кластер из двух серверов 1С
один основной — рабочий,
а второй — «отладочный»
и каким-то образом «загонять» туда подключения для отладки кода на сервере ???
(5)
PS:
Наверное также было бы интересно рулить составом кластера серверов.
Добавлять новые сервера, рабочие процессы…
Правда если дальше двигаться в этом направлении, то альтернативная
консоль администрирования серверами 1С получится.
:)))
Ну может и стоит так и сделать,
а то штатная консолька через чур уж сырмяжная.
Вешь полезная, особенно для разработчиков которым иногда приходиться по несколько версий сервером использовать
Вообще менеджер кластеров 1с очень не удобный. Это базовый функционал, которого в нем нет 🙂
Я похожую операцию делал при помощи типового regedit… Но програмкой конечно удобнее.
Говорят в 1с 8.3 сделали нормальный менеджер.
Приложение, позволяющее в удобном интерфейсе очень быстро создавать новые службы сервера 1С, изменять параметры по существующим службам, а также удалять ставшие ненужными очень часто необходимо. Здесь меньше движений. На 32 разрядных серверах службы приходится часто перезапускать, плюсую …………….
Отлично. Забрал.
Было бы неплохо автоматически добавлять разрешение полного доступа для указанного пользователя на каталог файлов кластера.
За старания и интерфейс плюс.
А каков порядок действий, если нужно запустить еще одну службу, но с другой версией 1с?
Вот бы эта штука сама следила за загрузкой служб добавляла и ли удаляла службы при необходимости та так же балансировала нагрузкой на службы и вешала службу на определенное ядро процессора. А так прикольная штука но нужна буквально на 10 минут в начале установки а далее нет
Плюсую, что бы положить в закладки, в жизни почти каждого 1с ника, возникает момент когда надо поэкспериментировать с количеством служб, пусть хоть на разок, но бывает нужно.
(6) У меня не в тему вопрос :
Почему плохо иметь сервер запущенный в режиме отладки ?
Почему нужно возвращать сервер «из отладки» ?
(13) копируете существующую службу и меняете путь к исполняемому файлу (от другой версии платформы).
(17) Тогда вопрос такой: как инсталлировать новую версию платформы, если она сама будет создавать новую службу при установке?
(18) Уже не актуально, разобрался, очень помогло. Плюс за разработку, сэкономила время на запуск второго экземпляра сервера..
(17)
а трудно сделать выпадающую менюшку
для выбора одной из уже установленных платформ
с автоматической установкой пути к исполняемому файлу?
(20)
и еще одно замечание:
у меня почему-то не получается с помощью твоей прикладухи
запустить одновременно два разных сервера 1С.
если не остановить первую (работающую) службу,
то при попытке запуска второй службы приложение виснет.
—
программное окружение:
Операционная система:
— Win-7x64bit
Сервера 1С:
— 8.1.15-32bit
— 8.2.14-32bit
(21)
в прочем возможно дело в самой операционке.
поскольку из оснастки «Управление компьютером»
тоже не удается одновременно запустить
две службы агента сервера 1С.
(20) yuraos, не совсем понимаю что требуется, но ведь исходники приложены :).
VB.net для 1С-программиста достаточно легок в освоении.
(22) — скорее всего службы по портам пересекаются. Покажите строки запуска от обоих служб.
(23)
http://infostart.ru/public/255538/
текущая версия для 8.3 работать будет???
***
а то тут какие-то «хакеры» предлагают «альтернативу»:
(24) Rothschild, должно работать
Очень удачный менеджер. Хотелось бы конечно чтобы он еще и кластер создавал. Ну хотя бы так, всеравно нужный менеджер. Спасибо.
Так и должно быть?
(27) Dilovar9,
Нет, такого быть не должно.
Исходники выложены на github и там можно убедиться, что ничего криминального в коде нет.
Возможно, антивирусам не нравится создание/удаление служб как таковых, т.к. это операция требует административных прав.
Ахив битый.
При скачивании архив удаляется системой с сообщением о вирусе
(30) вирусов нет. Как вариант, попробовать собрать приложение из исходных кодов —https://github.com/alekseybochkov/ServiceInstaller1C