Пример запуска сервера в качестве службы
Автор Кравчинский Алексей на 29 March 2016 04:29 AM

Пример запуска сервера в качестве службы:
1.Создаёте коммандный пакетный файл bat. Допустим, Install_SSD_as_service.bat
2.Содержимое файла:

При использовании Меркурий Энергоучёт:
sc create "ССД МЭ 1" displayname= "Сервер сбора данных МЭ 1" binpath= "\"C:\Program Files\Incotex\ASCUE\Bin\DAServer.exe\" \"C:\ENTEK Projects\ASCUEDemo\main.ipr\" DBConnectsCount=30 /service secondcopy ascueonly ascuecom=1 port=6001 ascuephone=8911"
sc config "ССД МЭ 1" type= interact type= own start= auto depend= FirebirdServerDefaultInstance
sc failure "ССД МЭ 1" reset= 0 actions= restart/30000
sc start "ССД МЭ 1"

или для скады Энтек:
sc create "ССД ЭНТЕК 1" displayname= "Сервер сбора данных ЭНТЕК 1" binpath= "\"C:\Program Files (x86)\ENTEK\Bin\daserver.exe\" \"C:\ENTEK Projects\ASCUEDemo\main.epr\" DBConnectsCount=30 /service secondcopy ascueonly ascuecom=1 port=5501"
sc config "ССД ЭНТЕК 1" type= interact type= own start= auto depend= FirebirdServerDefaultInstance
sc failure "ССД ЭНТЕК 1" reset= 0 actions= restart/30000
sc start "ССД ЭНТЕК 1"

За запуск параллельных копий отвечает параметр -secondcopy. Также у разных сервисов должен отличаться порт.
Путь к файлу сервера, а также путьт к проекту будет совпадать у всех запущенных серверов.

Все параметры запуска сервера можно посмотреть запустив файл DAServer.exe с атрибутом ?
При этом будет выведено окно с перечнем возможных параметров запуска.

Для удаления сервиса создадим пакетный файл Uninstall_SSD_as_service.bat
Содержимое файлов для удаления сервиса:
sc stop "ССД МЭ 1"
sc delete "ССД МЭ 1"
или
sc stop "ССД ЭНТЕК 1"
sc delete "ССД ЭНТЕК 1"