Имя: Пароль:
1C
 
COMОбъект("V8.COMConnector") в v8.1
0 Rabajaba
 
26.09.08
12:23
Нашел кусок кода, который мне собственно и нужен. Платформа 8.1.10.
Объекта V8.COMConnector не видит, видит объект V81.COMConnector.
Дальше не видит метода ConnectServer. Прошу помощи кто чем может.

Коннектор = Новый COMОбъект("V8.COMConnector");
Сервер = Коннектор.ConnectServer("TestServer");
// Аутентифицироваться с административными правами в нужной базе.
Сервер.AddAuthentication("Администратор","");
// Создать объект нужной информационной базы.
ИнформационнаяБаза = Сервер.CreateInfoBaseInfo();
ИнформационнаяБаза.Name = "Test_Base";
// Получить соединения базы.
СоединенияБазы = Сервер.GetIBConnections(ИнформационнаяБаза);
// Разорвать соединения клиентских приложений.
Для Каждого Соединение Из СоединенияБазы Цикл
    Сервер.Disconnect(Соединение);
КонецЦикла;

PS Задача программно отключать пользователей.
1 Salvador Limones
 
26.09.08
12:24
Используй КОМ от 8.1
2 Rabajaba
 
26.09.08
12:27
Дальше не видит метода ConnectServer
а с этим что делать то?
3 ShoGUN
 
26.09.08
12:28
4 ShoGUN
 
26.09.08
12:29
(2) Это для 8.0 кусок, в 8.1 другой сервер и другие методы COM-соединителя. CennectAgent используй. А вообще есть еще и СП. :)
5 ShoGUN
 
26.09.08
12:30
(4) *ConnectAgent конечно
6 Rabajaba
 
26.09.08
13:13
Cпасибо конечно, но у ConnectAgent нету методов Disconnect
7 ShoGUN
 
26.09.08
13:14
(6) По ссылке ходил? СП читал? Не задавай глупых вопросов.
8 Rabajaba
 
26.09.08
13:20
Ходил. читал. Прошу ткнуть носом в метод Disconnect у агента.
Disconnect есть у WorkingProcess.

Собсно теперь появилась новая ошибка:

{Форма.Форма(18)}: Ошибка при вызове метода контекста (ConnectWorkingProcess): Произошла исключительная ситуация (V81.COMConnector.1): server_addr=tcp://KIRILL:1542 descr=Ошибка сетевого доступа к серверу
(Windows Sockets - 10061(0x0000274D). No connection could be made because the target machine actively refused it. ) line=567 file=.\src\DataExchangeTcpClientImpl.cpp
       Проц = Коннектор.ConnectWorkingProcess(Кластер.HostName);
по причине:
Произошла исключительная ситуация (V81.COMConnector.1): server_addr=tcp://KIRILL:1542 descr=Ошибка сетевого доступа к серверу
(Windows Sockets - 10061(0x0000274D). No connection could be made because the target machine actively refused it. ) line=567 file=.\src\DataExchangeTcpClientImpl.cpp


чё с этим делать то?

No connection could be made because the target machine actively refused it

это как лечить то?
9 ShoGUN
 
26.09.08
13:23
(8) Агент на сервере запущен? Файрволл не посылает ли, случаем?
10 Rabajaba
 
26.09.08
13:24
фаервола нет, агент запущен.
11 ShoGUN
 
26.09.08
13:27
(10) Да код, че-то я не пойму что такое server_addr=tcp://KIRILL:1542
12 Rabajaba
 
26.09.08
13:27
подключаюсь на локальную машину.
для теста подключился к серверу и там все нормально.
кластер серверов подключается нормально.
13 ShoGUN
 
26.09.08
13:27
(11) *Дай.
14 Rabajaba
 
26.09.08
13:29
Проц = Коннектор.ConnectWorkingProcess(Кластер.HostName);

вот вызов. все остальное это уже ругань 1С. serv_addr это наверно какая-то хитрая строка соедения ...
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший