Имя: Пароль:
1C
 
УПП, Обработка.БлокировкаСоединенийСИнформационнойБазой ошибка выбрасивания на Χ64.
,
0 pvase
 
10.08.18
17:29
При попытке выбросить пользователей с базы с помощью обработки БлокировкаСоединенийСИнформационнойБазой выдает слелующую ошибку:
"{ОбщийМодуль.СоединенияИБКлиентСервер.Модуль(400)}: Ошибка при вызове конструктора (COMОбъект): -2147221005(0x800401F3): Недопустимая строка с указанием класса".
Платформа 8.3.12.1567 Χ64 Клиент-Серверная.
Если клиент x32 а сервер х64, то создание Com объекта происходит без проблем, но присоединиться к кластеру ему не удается, выдает следующее:
"{ОбщийМодуль.СоединенияИБКлиентСервер.Модуль(424)}: Метод объекта не обнаружен (ConnectAgent)
"
Если база на сервере x32 и клиент x32 - то все работает.
Вот привожу код (привожу код, потому что 1С чего-то забыла про порты, если они не по-умолчанию, у меня порт: 2141):
Попытка
        COMСоединитель = Новый COMОбъект(ОбщегоНазначения.ИмяCOMСоединителя());
    Исключение
        Сообщить(ОПисаниеОшибки());
    КонецПопытки;
    // Подключение к агенту сервера
    Попытка
        АгентСервера = COMСоединитель.ConnectAgent(ИдентификаторАгентаСервера+":2141");
    Исключение
        Сообщить(ОПисаниеОшибки());
    КонецПопытки;
1 pvase
 
10.08.18
17:32
При работе 32 бытного приложения с x64 сервером V83.COMConnector ссылается на: "C:\Program Files (x86)\1cv8\8.3.12.1567\bin\comcntr.dll".
2 pvase
 
10.08.18
17:34
В общем вывод такой, V83.COMConnector для x64 недоступен, а в случае сервера x64 а приложения х32 - соединиться с базой не может.
Как теперь решить этот вопрос? Пользователя хотят восстанавливать последовательность, а механизма выбросить пользователей кроме себя у них нет.
3 lubitelxml
 
10.08.18
17:40
4 Cyberhawk
 
10.08.18
17:41
64-битный ком-коннектор есть в дистрибутиве 64-битного сервера приложений
5 pvase
 
10.08.18
17:49
(4) Спасбо, но проблема не в том, что его нет, но в папке bin есть, файл ""C:\Program Files\1cv8\8.3.12.1567\bin\comcntr.dll"" присутствует, но он почему то не хочет создаваться из под 1С.
6 lubitelxml
 
10.08.18
17:50
(5) так ты его зарегь как в (3) описано
7 pvase
 
10.08.18
18:18
(3) К сожалению не помогло, та же ошибка:
{ОбщийМодуль.СоединенияИБКлиентСервер.Модуль(401)}: Ошибка при вызове конструктора (COMОбъект): -2147221005(0x800401F3): Недопустимая строка с указанием класса
8 pvase
 
10.08.18
18:19
Хотя уже прописал вот так:
    Попытка
        //COMСоединитель = Новый COMОбъект(ОбщегоНазначения.ИмяCOMСоединителя());
        COMСоединитель = Новый COMОбъект("V8_ComConnector");
    Исключение
        Сообщить(ОПисаниеОшибки());
        Сообщить(ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()));
    КонецПопытки;
9 pvase
 
10.08.18
18:23
Кстати в ERP эту функцию убрали, видимо пл этим же причинам.
10 pvase
 
10.08.18
18:40
Оказывается в ERP такая функция есть и она работает, надо было базу на сервере развернуть. Вот оттуда и возьмем "рабочий код" :).
11 Cyberhawk
 
10.08.18
20:30
(5) Создавать экземпляр во встроенном языке нужно в 64-битном процессе
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший