#0
by fierylions
После выполнения службы windows написанной на C# в 1С остается com соединение. Как можно отсоединится от базы? Пример: try { Random rd = new Random; V82.COMConnector com1s = new V82.COMConnector; Так вот обнуление и уничтожение переменных не помогает com соединение в 1С все ровно висит.... Пробывал и result.Exit (Quit,Close,0,null) нечего не помогает.А у самого объекта com com1s пишет вообще таких методов нет... Может у кого то есть пример ?
#3
by fierylions
к сожалению соединение остается... единственное что изменилось если второй раз приконектится тогда исчезает старое соединение и появляется новое. А без этих строк всегда соединения добавлялись +1. Может есть еще идеи?
#4
by yukon
Поробуй: System.Runtime.InteropServices.Marshal.FinalReleaseComObject(com1s); повтори для всех COM-Объектов.
#6
by Serginio1
1С может кэшировать соединения MaxConnections (MaxConnections) Использование: Только чтение. Описание: Тип: Число. Определяет максимальное число одновременно существующих объектов Внешнее соединение, созданных через данный менеджер COM-соединений. Число одновременно существующих соединений включает также число соединений, находящихся в пуле внешних соединений. Значением по умолчанию 0 (число одновременно существующих объектов Внешнее соединение не ограничено). Устанавливать свойству не нулевое значение можно только в том случае, если сам объект был создан в Multithreaded Apartment (MTA), что обеспечивает реальное функционирование самого менеджера и созданных им объектов Внешнее соединение в многопотоковой (multithreaded) среде. Это условие соблюдается в частности, если COM-соединитель был создан в приложении ASP.NET. Если же объект был создан в Singlethreaded Apartment (STA), то реально все действия с ним и созданными им объектами Внешнее соединение будут выполняться в одном потоке. В этом случае, если метод Connect не сможет на первом проходе найти подходящее или создать новое Внешнее соединение, то выполнение этого метода зациклится, так как освободить уже, возможно, ненужное другое Внешнее соединение будет нельзя по той причине, что операция освобождения объекта Внешнее соединение должна быть выполнена в том же потоке, в котором уже выполняется метод Connect. Следует помнить, что создание COM-объектов из приложения 1C:Предприятие 8 выполняется из STA. Это же справедливо для большинства GUI-приложений Windows.
#7
by lucifer
"Пробывал и result.Exit (Quit,Close,0,null) нечего не помогает" вообщето-то в c# все что связано с внешнеми ресурсами должно быть реализовано через интерфейс IDisposable, посмотри COMConnector поддерживает этот интерфейс, если да то используй using {} а на result.Exit и result = null;
#9
by fierylions
Не один из вариантов не помог что то делаю не так.... база файловая может это как то повлиять?
#13
by Serginio1
Вот ту народ пишет Dim Сотрудники As Object .... Сотрудники = Trade.CreateObject("Справочник.Сотрудники") 'После объявлении любого объекта 1С надо вставить: Marshal.Release(Marshal.GetIDispatchForObject(Сотрудники)) .... 'в конце кода добавляем: Marshal.ReleaseComObject(Сотрудники) Сотрудники = Nothing GC.Collect GC.WaitForPendingFinalizers
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
- Как получить значение перечисления через COM соединение?
- Драйвер для подключения к компьютеру через COM порт весовых терминалов ST,
- Не могу соединится через COM. Несовместимая версия файла БД ?
- Не могу соединиться с сервером предприятия через COM
- Построение прямой по точкам C#
- v8: Сдача отчетность через интернет через ... 1С БП 2.0
- Соединение 8.3 и 8.2 через COM соединение.....
- Проведение документа через COM соединение.
В этой группе 1С
- Управляемые формы. Как открыть форму с параметрами и получить обратно результат?
- v7: Addin.MIOConnect подскажите, что это такое
- БП 2.0 объединение нескольких ОС в одно
- УФ Команды объектов сохраняют документ и могут не сохранять . Как регулировать ?
- Как настроить считыватель магнитных карт
- При закрытии терминальной сессии не удаляется сеанс 1С
- ПостроительDOM при чтении преобразовывает CDATA в Текст
- Подготовка к ЗУП спец. (продолжение)
- Как удалить строку из текстового файла в 8.2?
- v7: Как отловить выбор из справочника в табличной части документа
- Создание разных наценок на разный товар в УТ 11
- Конвертация данных - из справочника в регистр сведений
- Запрос в отчете в ЗУП 3.0
- Отбор в отчете СКД по нескольким значениям из справочника.
- Отбор в форме выбора 8.3
- оборотно-сальдовая ведомость не видит оборотов в отличии от ОСВ по счету
- вытащить в отчет тех контрагентов у которых нет движений в бух учете.
- Справочник, пометка на удаление из формы списка
- Сохранение прайс-листа из 1С в эксель требуемого формата.
- Программное получение схемы XML