Имя: Пароль:
1C
1С v8
Корректно завершить работу COM-соединения
0 kugelfangg
 
02.08.12
10:45
Здравствуйте, Господа! Подскажите пожалуйста как корректно завершить работу СОМ-Соединения(COMОбъект = Новый ComObject("V82.ComConnector"))?
Достаточно ли "COMОбъект = Неопределено"?
Или есть более надежный метод?
1 DrShad
 
02.08.12
10:46
достаточно
2 gosn1ck
 
02.08.12
10:49
ну если это эксель, то обычно его закрывают
3 DeeXeeD
 
02.08.12
10:56
Использовать функцию завершения работы в зависимости от типа создаваемого объекта
4 kugelfangg
 
02.08.12
10:56
(3) Напишите пожалуйста подробней, как это осуществить.
5 palpetrovich
 
02.08.12
10:59
мне пока хватает:
открыть
База = Новый COMObject("V82.ComConnector");
Соединение = База.Connect(...
закрыть
Соединение = 0;    
БазаУТ = 0;
6 palpetrovich
 
02.08.12
10:59
* БазаУТ=База :)
7 DeeXeeD
 
02.08.12
11:00
если ком объект Excel application То что то вроде COMОбъект.close();
а для V82 должно быть ЗавершитьРаботуСистемы (Exit), но в справке указано Доступность: Тонкий клиент, веб-клиент, толстый клиент, нету внешнего соединения. видимо платформа сама знает что нужно завершить соединение с таким типом если COMОбъект = Неопределено
8 DeeXeeD
 
02.08.12
11:01
а вообще если пропадает процесс 1с в списке процессов в винде то этого достаточно :)
9 Maxus43
 
02.08.12
11:02
(8) это если "application"

для ComConnector - не нужно ничего, даже если сразу не закроется - винда закрывает неактивные com-объекты, это чатсь технологии com, емнип
10 DeeXeeD
 
02.08.12
11:03
(9) ниразу не дождался пока винда закроет эксели.. бывает по пару дней висят
11 Maxus43
 
02.08.12
11:04
(10) ещё раз - если юзать application - запускается реальный сеанс экселя, юзай эксель.комконнектор - не будет сеанса впринципе
12 DeeXeeD
 
02.08.12
11:05
а, ну да :)
Выдавать глобальные идеи — это удовольствие; искать сволочные маленькие ошибки — вот настоящая работа. Фредерик Брукс-младший