Регламентное задание: не всегда создается COMConnector #746045


#0 by PVS_Mtl
Добрый день! 1С 82 клиент-сервер, толстый клиент, УПП 1.3 В регламентном задании создается объект COMConnector Проблема в следующем: пока на сервере 1С (на котором запущен агент сервера и т.п.) создан процесс Администратора (подключаемся при помощи удаленного рабочего стола), ком-объект создается. Как только соединение с сервером разрывается, при отработке задания возникает ошибка: Процесс сервера не может быть запущен, т.к. указана неправильная идентификация. Проверьте правильность указания имени пользователя и пароля. DLL для v82.comconnector зарегистрирован администратором без отключения агента сервера (было произведено позже). Причем регистрация ком-объекта делалась под другую задачу, но гораздо позже развертывания сервера с 1С (т.е. COMConnector, по словам администратора, несколько лет зарегистрирован не был). Предполагали, причина в том, что dll была зарегистрирована только для пользователя Администратор. Однако сисадмин утверждает, что все-таки для всех. Как быть?
#1 by butterbean
Администрирование - службы компонентов - настройка DCOM - там проверить права на запуск для 1С application
#2 by DmitrO
"Процесс сервера не может быть запущен, т.к. указана неправильная идентификация. Проверьте правильность указания имени пользователя и пароля." Имхо, это говорит о том, что у вас ComConnector зарегистрирован в COM+(DCOM) и работает в выделенном процессе. Если бы вы использовали его как прямой Inproc сервер, то такой ошибки в принципе не могло бы быть так как в этом случае он бы работал в контексте вызывающего процесса, кроме того он бы работал быстрее. Зачем вы его используете так?
#3 by PVS_Mtl
администратор говорит, зарегистрировал через Потом используем через А как нужно было?
#4 by DmitrO
администратора надо спросить есть что нибудь в настройках COM+(DCOM) про ComConnector (есть ли регистрация?).
#5 by DmitrO
это все понятно, и правильно.
#6 by PVS_Mtl
говорит есть всё, он точно зарегистрирован, т.к. при залогинивании Администратора на сервер нормально создается агентом сервера. Что сделали сейчас: на сервере 1С сл компонентов - компьютеры - мой комп - приложения com+ - v82_comconnector - свойства - удостоверение - добавил пользователя, от чьей учетной записи будет создаваться (Администратора). Ошибка изменилась: Ошибка при вызове конструктора (COMОбъект). Интерфейс не поддерживается.
#7 by DmitrO
так вот в этом и проблема, что ЕСТЬ! Если ее убрать (удалить к чертовой матери), то ComConnector будет использоваться как inproc сервер, ибо он для этого и сделан таким разработчиками платформы.
#8 by DmitrO
+ но, надо чтобы разрядность вызывающего процесса, в нашем случае сервера 1С, совпадала с разрядностью ComConnector-а.
#9 by PVS_Mtl
подскажите, а как нам сейчас правильно поступить? каким образом удалить регистрацию? PS Насколько я понимаю, регистрация проводилась после того, как админ написал vbs скрипт отключения пользователей 1С (соединений) перед снятием бекапа, и в этом скрипте была аналогичная строка (создание ком-объекта), и на ней какая-то ошибка (уже сейчас не скажем).
#10 by DmitrO
справка: в составе 64-битного сервера 1С есть 64-битный COMConnector
#11 by PVS_Mtl
Нам его (COMConnector) разрегистрировать? Или через оснастку как-то удалить? Из vbs-скрипта он станет. я так понимаю, недоступен?
#12 by DmitrO
не торопитесь еще вопрос, а версии серверов 1С вызывающего (регл. задание) и тот на котором расположениа база к которой подключаетесь комконнектором, одинаковые?
#13 by DmitrO
Суть регистрации в COM+ в следующем: Изначально комконнектор разработан в самом оптимальном варианте: inproc ком-сервер (работающий в контексте вызывающего процесса). Существуют версии: для 32-битного процесса (в составе обычного дистрибутива для Windows), и для 64-битного процесса (в составе 64-битного сервера 1С). В процессе установки/обновления платформы происходит регистрация ComConnectora (regsvr32 comcntr.dll) в 32-битном дистрибутиве ВСЕГДА, в 64-битном есть возможность его не ставить и соответственно не регистрировать при установке. А COM+ позволяет использовать ком-сервера под теми же именами в контексте отдельного выделенного процесса, (т.е. это как бы переопределение), и по скольку процесс все равно другой, то разрядность вызывающего процесса и процесса ком-сервера может не совпадать.
#14 by flyer63
Добрый день, система x64, 1C - x32 (установлена в Program Files x 86)
#15 by DmitrO
это админ? (пытаюсь догадаться)
#16 by flyer63
Да, админ
#17 by DmitrO
служба Агент сервера 1С:Предприятия точно запускается из Program Files x86..? потому что установлено может в принципе и 32 и 64.
#18 by DmitrO
если так, то у вас 32 битный сервер. тогда я вообще не понимаю зачем у вас сделана регистрация в COM+.
#19 by PVS_Mtl
а что сейчас посоветуете нам сделать?
#20 by leonidkorolev
Что мешает попробовать удалить регистрацию и перерегистрировать dll?
#21 by DmitrO
я хочу сначала получить ответ на мой вопрос из
#22 by DmitrO
на этот вопрос должен ваш 1Сник ответить сразу, даже если его разбудят среди ночи.
#23 by DmitrO
релизы 1С одинаковые или нет, или это вообще тот же сервер, я просто не знаю как еще сформулировать :)
#24 by flyer63
Да, это тот же сервер
#25 by PVS_Mtl
это один сервер
#26 by DmitrO
тогда удаляйте регистрацию в com+ без сомнения
#27 by DmitrO
не надо это вам вообще, все будет работать как положено без всяких выделенных процессов
#28 by DmitrO
прямо в консоли ком+, приложение ком+ удаляете и все, ничего страшно и необратимого не случится, приспичит снова пропишете
#29 by flyer63
После чего заработало: Удалил ComConnector из приложений COM+, не заработало Отменил регистрацию comcntr.dll (Regsvr32 «C:Program Files (x86)1cv828.2.14.533incomcntr.dll» u) Снова зарегистрировал comcntr.dll (Regsvr32 «C:Program Files (x86)1cv828.2.14.533incomcntr.dll») Снова создал приложение COM+ 1. Администрирование - Службы компонентов – Компьютеры – Мой компьютер – Приложения COM+ - Создать приложение – Создать новое приложение – имя «V82_COMConnector»(переключатель «Серверное приложение») – Указанный пользователь (ИмяСервераАдминистратор) 2. В появившейся ветке V82COMConnector – Компоненты – создание нового компонента – Установка новых компонентов - <каталог 1С>incomcntr.dll 3. Правой кнопкой по ветке V82COMConnector – Свойства – Безопасность – Снял галку «Принудительная проверка доступа для приложений» - Поставил галку «Применить политику программных ограничений» - Уровень ограничений «Неограниченный» 4. Во вкладке Удостоверение  выбрал -  Указанный пользователь ИмяСервераАдминистратор, пароль Видимо, когда это приложение создавали в прошлый раз, просто написали Администратор, в этот раз выбрал пользователя через Обзор - подставилось ИмяСервераАдминистратор, отличия заметил только в этом
#30 by Serginio1
А зачем тебе COM+
#31 by DmitrO
это, чёрт побери, всем интересно :)
#32 by DmitrO
релиз 8.2.14.540 вышел 31.10.11 вероятно 8.2.14.533 чуть раньше, но его нет даже среди рекомендованных.. Счастливые вы люди! Вот оно: меньше обновлений меньше проблем, работает не трогай!
#33 by DmitrO
1)надо было попробовать просто после перерегистрвации проверить, до создания COM+ приложения. 2)и по идее "не заработало", это не конструктивно, текст ошибки бы увидеть.
#34 by Стальная Крыса
действительно не знаешь зачем он нужен автору ?
#35 by PVS_Mtl
возможно и не нужен, однако не хотелось бы убедиться в обратном в самый неподходящий момент. Спасибо за помощь!
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

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