Здравствуйте!

Мы используем vbs-скрипт для отключения пользователей от базы перед бэкапом.
Если на машине стоит один сервер 1С, то с подключением к нему проблем не возникает.
Но если один сервер стоит на стандартном порту, а второй (другой версии) – на каком-то другом, то подключиться ко второму серверу у нас не получается.

В нашем случае 1С v8.2 стоит на порту 1541 и 1С v8.3 стоит на порту 2541 на машине vm205.
Скрипт, на котором воспроизводится проблема, занимает две строчки – инициализация коннектора и подключение к серверу.


Если вызвать его без указания порта:
Set Connector = CreateObject("V83.COMConnector")
Connector.ConnectAgent("vm205")


То результат выполнения скрипта будет таким (коннектор попытался подключиться к серверу на порту 1541):
V83.COMConnector.1: Различаются версии клиента и сервера (8.3.9.2170 – 8.2.19.83), клиентское приложение: COM-администратор


Если вызвать с явным указанием порта:
Set Connector = CreateObject("V83.COMConnector")
Connector.ConnectAgent("vm205:2541")


То результат будет уже таким:
V83.COMConnector.1: descr=Сервер недоступен (Не отвечает, завершается аварийно или порт занят другим приложением) line=831 file=src\RemoteCreatorImpl.cpp


Также пробовали вызывать с указанием протокола (tcp://) и пробовали использовать IP вместо имени компьютера. Результат такой же: без порта – «различаются версии», с портом – «сервер недоступен».

Есть подозрение, что эта проблема связана с дефолтными значениями RAgentPortDefault, RMngrPortDefault, LowBoundDefault и HighBoundDefault в COM-коннекторе (их описание: http://1cniku.ru/Articles/V8OLE.html#conmetod). Однако способов явно указать нужные значения мы не нашли.

Похожая проблема встречается на форумах, однако внятных решений предложено не было:
  1. https://www.forum.mista.ru/topic.php?id=506518
  2. https://www.forum.mista.ru/topic.php?id=531579
  3. https://www.forum.mista.ru/topic.php?id=553442




Если у Вас есть решение, как подключить COM-коннектор к серверу на нестандартном порту, то очень прошу им поделиться.

Если каких-то данных не хватает -- спрашивайте, постараюсь оперативно отвечать.