Не регистрируется comcntr.dll при использовании нестандартного IP порта #792923


#0 by mnike1c
Да тема в гугле поднималась десятки раз и я всё сдесяток раз переустанавливал всё, что только можно по мануалам и выполнял команду регистрации dll, но не получается. [b]На стандартном порте работает код зареганной dll, на не стандартном нет.[/b] Нигде не видел упоминания о том, чтобы кто-то регистрировал библиотеку при работе на портах, отличных от 1541. У меня стоит 2 разные 1с-ки и я хочу зарегистрировать comcntr.dll для той, которая работает на нестандартном порте. Мне нужен совет о том, что возможно дополнительно нужно где-то настроить в таком случае или получить от знатоков подтверждение, что нет связи с портом и я просто что-то другое не так делаю. Помогите пожалуйста. Сижу в нерабочее время по вечерам и пытаюсь настроить, пока все offline. Детально зачем мне это нужно: 1) Была на сервере 8.3.6.2390 на стандартном порте самописная конфигурация и с ней работает сотня клиентов со своими компами. Заставлять их всех менять версию невозможно. Обновлять эту конфигурацию или двигать её порт невероятно затратно будет. И уж тем более сделать это одновременно. 2) Возникла желание перевести в серверный вариант файловую бухгалтерию и она потребовала 1с поновее. Пришлось поставить 8.3.9.2170 на другой порт и в другую директорию, чтобы 1с-ки друг другу не мешались. Настроить их параллельную работу удалось на отлично. (Повесил второй сервис на порты -regport 1741 -port 1740 -range 1760:1791) Старые клиенты не заметили изменений. Бухгалтерией пользуются пару человек и им тоже вышло настроить на клиентских машинах одновременный доступ к двум конфигурациям. В общем двигать 8.3.9.2170 на другие порты и возиться с компами пользователей 8.3.9.2170 я могу. 3) Возникло желание воспользоваться плюшками COM-соединения и делать запрос к данным бухгалтерии из самописной конфигурации и там их отображать. Сам работоспособный запрос на файловой версии уже есть, но в серверном варианте проблема в строчке КоннекторCOM = Новый COMОбъект("V83.COMConnector"); Причём сообщение ошибки различается в зависимости от того зарегистрирована ли dll-ка или нет. regsvr32 /u "C:Program Files (x86)1cv8_buhg8.3.9.2170incomcntr.dll" - разрегистрировал. ошибка "класс не зарегистрирован". Аналогично при 8.3.6.2390. Всё логично regsvr32 "C:Program Files (x86)1cv8_buhg8.3.9.2170incomcntr.dll" - зарегистрировал. ошибка "недопустимое имя класса". при этом для 8.3.6.2390 аналогичная команда делает V83.COMConnector работоспособным. Можно посмотреть кодом список подключённых к 8.3.6.2390 базе юзеров. При подключении к бухгалтерии будет ошибка, что разные версии клиента и сервера. При любой команде командная строка пишет, что класс успешно зарегистрирован. Пробовал параметры /n /i:user, пробовал от имени администратора и при отключении сервиса 1с перед выполнением команды - не помогло. ps На сервере 64битная винда и SQL, но обе 1с-ки стоят 32-битные, поэтому COM+ оболочка не нужна, но можно попробовать 64битную поставить специально Может строчка "V83.COMConnector" для версии 8.3.9.2170 как-то по другому пишется? Конечно было бы не плохо, чтобы были зарегистрированны 8.3.6.2390 и 8.3.9.2170 одновременно, но это видимо не возможно.
#1 by МимохожийОднако
. Я бы всё сделал на одинаковой платформе. Не вижу причину разводить зоопарк. ОФФ: стоя в гамаке не удобно )) 1). В документации есть описание автоматической установки платформы по сценарию на каждом клиенте.
#2 by mnike1c
Под клиентам подразумевается клиенты фирмы, которые не имеют отношения к нам. У них тоже не редко стоят ещё и свои 1с-ки. Целые "зоопарки" из 8.2, 8.3 и батники, которыми они их запускают. Автоматической установкой можно им что-либо подгадить и тогда такой срач поднимется, что потеряем денег больше, чем лицензия на отдельный сервер. Наше желание мутить с бухгалтерией их не должно касаться. В общем вариант трогать клиенты компьютера и основную конфигурацию отпадает на все 100%. Жалко делать второй сервер (или виртуалку) + вторую лицензию из-за одного отчёта. Конечно однажды мы и свою 1с обновим, но это не обязательно делать часто. А бугалтерия пусть обновляется сколько ей надо, хоть каждый день.
#3 by МимохожийОднако
Для клиентов нет возможности сделать веб-доступ?
#4 by mnike1c
нет. не будет работать сканер штрихкодов.
#5 by mexanik_96
но ведь может. ну ТО в ут в вебе же работает как то?
#6 by h-sp
сделайте вебсервис вместо com, тогда без разницы у кого какая платформа, 8.2 или 8.3, а плюшки те же самые.
#7 by alexlap
Причем здесь ip и нестандартные порты Можно зарегистрировать только dll одной версии 8.3. Другая клиентская машина или ВМ на той же поможет.
#8 by mnike1c
alexlap я знаю что можно только одну dll. Я описал, что регистрация одной версии 1с работает, а другой нет. Причина мне не понятна и я делаю предположение, что dll не видит 1с на другом порте
#9 by etc
посмотри в оснастке "Службы компонентов" в разделе Компьютеры -> "Мой компьютер" -> "Приложения COM+" не прописан ли у тебя там жестко путь к comcntr.dll от версии 8.3.6.2390. Если прописан то убирай или меняй.
#10 by etc
и учти что даже после регистрации старая dll иногда висит в памяти если она прописана через "Приложения COM+"
#11 by mnike1c
COM+ не прописан. я смотрел мануал по его установке и убедился, что у меня его нет
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С