Имя: Пароль:
1C
1С v8
Недопустимая строка с указанием класса
, , ,
0 tiago
 
21.04.17
10:13
Доброго дня, уважаемые форумчане!

Прошу, помоги решить такую проблему, т.к. самостоятельные поиски и действия результата не дали.

На комп-е установлены платформы:
8.2.19.80
8.3.9.2170

Есть обработка с кодом подключения к базе на сервере 8.3:

    ПараметрыПодключения = "Srvr=" + СерверДляПодключения + ";Ref=" + БазаДляПодключения + ";Usr=" + ПользовательДляПодключения + ";Pwd=" + ПарольДляПодключения;
    

    V83COMConnector = Новый COMОбъект("V83.COMConnector");

    Попытка
        возврат V83COMConnector.Connect(ПараметрыПодключения);
    Исключение
        Сообщить("Ошибка подключения!");
    КонецПопытки;


Если запускать обработку из 8.3, то код отрабатывает нормально. А если из 8.2, то ошибка:

{Форма.Форма.Форма(22)}: Ошибка при вызове конструктора (COMОбъект)
    V83COMConnector = Новый COMОбъект("V83.COMConnector");
по причине:
Недопустимая строка с указанием класса

Есть ли возможность запускать обработку с таким кодом с обоих платформ?

Благодарю за ответы!
1 tiago
 
21.04.17
10:49
Совсем некому помочь?
Ответьте хотя бы это возможно или нет?
2 Cyberhawk
 
21.04.17
10:59
Конечно можно
3 Cyberhawk
 
21.04.17
11:00
Ты пади в серверной 8.2 запускаешь этот код, а на сервере не установлен коннектор для 8.3
4 tiago
 
21.04.17
11:14
(3) Перед именем процедуры написано - НаСервере.

"не установлен коннектор для 8.3"
Если вы про регистрацию библиотеки из папки 8.3\bin, то я это делал - не помогает.
5 tiago
 
21.04.17
11:31
Я не понимаю почему из 8.3 запускается, а из 8.2 нет.
Подскажите пожалуйста, что еще нужно доустановить?
6 1dvd
 
21.04.17
11:35
не взлетит. Приводите все сервера к одной версии
7 tiago
 
21.04.17
12:12
Что-то я совсем запутался... Так можно или нет??

(6) Такое не получится к сожалению, много пользователей на 8.2 и много на 8.3. Теперь надо как-то общаться из 8.2 к 8.3.
8 1dvd
 
21.04.17
12:18
(7) можно сделать чтобы из 1С83 использовался СОМ-агрегат 1С82, но к 1С83 подключится уже не сможешь
9 Timon1405
 
21.04.17
12:22
(0) Новый COMОбъект(<Имя>, <ИмяСервера>) вторым параметром укажите сервер, где стоит коннектор нужной версии
10 PiotrLoginov
 
21.04.17
12:23
(7) Так можно.
11 Cyberhawk
 
21.04.17
12:31
Коннекторы разных изданий (8.2, 8.3) платформы прекрасно живут в одной ОС. У тебя он не установлен на хосте сервера приложений, где выполняется серверный код
12 tiago
 
21.04.17
12:35
(11) Уточните пожалуйста для меня, как самого тупого, мне нужно на сервер 8.2 перенести библиотеку comcntr.dll из bin\8.3 и зарегистрировать её?
13 Cyberhawk
 
21.04.17
12:41
(12) Это называется не "уточните", а "выложите на блюдечке". Нуэно, чтобы было зарегистрировано в системе приложение СОМ+ нужного издания и сборки
14 tiago
 
21.04.17
12:48
(13) Дело в том, что сервер мне не доступен во владение, поэтому придется кого-то просить сделать что-то конкретное, поэтому я и уточняю что именно сделать. 3арегистрировать в системе приложение СОМ - это зарегистрировать только DLL или в Администрировании создавать СОМ и Компоненты?

(9) Пишу вот так:
    V83COMConnector = Новый COMОбъект("V83.COMConnector", "192.168.10.20");
- та же ошибка
15 Cyberhawk
 
21.04.17
13:15
(14) MSDN в помощь тому, кто получит от тебя запрос на регистрацию в ОС нового приложения СОМ+
16 Вафель
 
21.04.17
13:17
(14) проще коннектор на нужном компе поставить
17 tiago
 
21.04.17
13:31
Все оказалось проще, чем я думал)))
Все что я сделал, это скопировал папку bin из установленной 8.3 на диск С на сервере 8.2 и сделал:
regsvr32 comcntr.dll
(кстати, почему то одна библиотека comcntr.dll лежащая в пустой папке реги-тся не хотела, поэтому взял всю папку).

И все заработало!)))

Спасибо всем за участие!!!
Компьютер — устройство, разработанное для ускорения и автоматизации человеческих ошибок.