Форум Кладовочки АЛьФ`а

Общие вопросы => 7.7 => Тема начата: MWW_Ruza от 26 февраля 2025, 22:30

Название: Зависает 7.7 при выходе?
Отправлено: MWW_Ruza от 26 февраля 2025, 22:30
Добрый день!
От чего может происходить сабж?
В какую сторону копать?
Происходит эпизодически, по непонятным причинам, то ничего, а то зависание глухое...
Какую-то ВК нужно прибивать перед закрытием программы?
Как определить, какую именно? Их там много грузится...
Как поймать, что именно приводит к такому эффекту?
Чем посмотреть-пощупать?
При чем, именно повторить ситуацию - не получается...
Закрывается, зараза, как так и надо, и раз, и два, и десять...
А потом, в самый неудачный момент - раз, и на тебе, висим...
От системы не зависит - в основном семерки, и 32 и 64 бита...
ВК - ScanOpos, FormEx, 1CPP, ёксель, OpenFileDialogsManager...
Чем можно просмотреть, что именно висит?
Или ВК тут вообще ни при чем, и надо в другую сторону копать?
Название: Re: Зависает 7.7 при выходе?
Отправлено: trdm от 27 февраля 2025, 10:35
Профайлинг и логинг.
Название: Re: Зависает 7.7 при выходе?
Отправлено: Djelf от 27 февраля 2025, 10:47
Для начала, судя по твоему скрину из "техподдержки" не ракомендуемый порядок загрузки ВК.
Рекомендуемый 1с++, formex, затем все остальное, а тебя не так это сделано.
Можно было бы попробовать выгружать ВК через formex, возможно та что не выгрузится и есляется проблемой.
Но у тебя кроме ВК еще всякие объекты типа msxml, если они не уничтожаются корректно и вовремя, то на них может и клинить.
Рецета тебе даже GPT не даст...
Название: Re: Зависает 7.7 при выходе?
Отправлено: ЯнСмит от 27 февраля 2025, 12:46
Djelf, такой порядок из личного опыта, или где-то есть конкретные рекомендации?
Название: Re: Зависает 7.7 при выходе?
Отправлено: Харлампий Дымба от 27 февраля 2025, 14:43
trdm+
попробовать логировать по максимуму, особенно выполнение ПриЗавершенииРаботыСистемы()
может какие-то вещи типа ОткрытьФормуМодально("Обработка.ТорговоеОборудование", "Отключить") висят в ожидании ответа от оборудования, или обращения к файлам?;
тот же журналрегистрации и 1cv7evt по размерам? 1cv7.cfg опять же должен записываться при выходе, и если пользователи не каждый в своей папке - то могут быть проблемы с доступом;
ну и вообще журналрегистрации глянуть на предмет отключение-подключение + ошибки в процессе работы;
может проблема не в 1с, а зависает сеанс RDP при выходе: какой-нибудь драйвер принтера не отпускает? в зависшем сеансе 1cv7&.exe присутствует?
может какая-нибудь загрузка из excel при выполнении сбойнула и оставила висеть процесс - и не позволяет закрыть сеанс;
может какие компоненты-перехватчики работают - тут вот на неделю Log_ert от romixа включил на рабочей базе - стон, тормоза и падения, неожиданно для меня.
Название: Re: Зависает 7.7 при выходе?
Отправлено: Arbuz от 27 февраля 2025, 16:33
У меня так ScanOpos чудил, висла наглухо. Окно закрывалось, а в процессах висело и не снималось никаким образом. Даже завершение работы или перезагрузка не выполнялись, висло по операции в/в. Долго рассказывать. Перешёл на Атол.
 ЗЫ: ScanOPOS.dll   0fdb0849dcab360c5f7d836c3b23f216   424 960
Название: Re: Зависает 7.7 при выходе?
Отправлено: Злоп от 27 февраля 2025, 21:07
У меня зависоны при выходе как-то были связаны с неубитыми ОLE-объектами. То есть все отключено/завершено - но вот никак. Пока принудительно не занулял все используемые ОЛИ, типа Оля=0;
Название: Re: Зависает 7.7 при выходе?
Отправлено: MWW_Ruza от 01 марта 2025, 22:26
Хм...
Это:
Цитата: Djelf от 27 февраля 2025, 10:47Рекомендуемый 1с++, formex, затем все остальное, а тебя не так это сделано.
переделал, теперь при старте программы грузятся 1с++, потом FormEx, потом curl1c (без создания глобальной переменной, естественно, как в редми написано), и все. Остальные загружаются при первом обращении к ним.
Пока - не могу ничего сказать, это возникает эпизодически, без каких-то зависимостей (по крайней мере, я их не улавливаю)... Буду наблюдать.
Название: Re: Зависает 7.7 при выходе?
Отправлено: MWW_Ruza от 02 марта 2025, 13:33
Я вот думаю, а может из-за какого-то таймера в этом окошке такое быть?

(https://content.foto.my.mail.ru/mail/m_w_w/1/i-607.jpg)

Это, как я понимаю, отку-да-то из формекса прилетело? Специально я этого не делал, оно "само" :-)))
Просто зависание идет уже после появления этого вопроса и нажатия на "Да"...
Название: Re: Зависает 7.7 при выходе?
Отправлено: Злоп от 02 марта 2025, 13:47
ну поставь в настройках Спр.Пользователи "запрашивать подтверждение при выходе = 0"
но, думаю, причина не в этом.
убирай возможные проблемы методом 1/2.
запусти и сразу выйди - нормально?
нет - зануляй все инициализации модуля и полностью закооментарь ПриНачалеРаботыСистемы
запусти и сразу выйди - нормально?
если да - а думаю будет так - начинай по 1/2
для начала: отруби при начале работы системы подключение торгового оборудования...
и пошел 1/2...
.
а то я знаю вас, навпихивают всяких ОО, напоминалок, автовыгрузок в соседние базы при каждом чихе и прочую муйню..
Название: Re: Зависает 7.7 при выходе?
Отправлено: MWW_Ruza от 02 марта 2025, 14:13
Цитата: Злоп от 02 марта 2025, 13:47ну поставь в настройках Спр.Пользователи "запрашивать подтверждение при выходе = 0"
Да, такая мысль уже была. Попробую.
Цитата: Злоп от 02 марта 2025, 13:47запусти и сразу выйди - нормально?
Нет. Иногда сразу зависает при выходе после открытия, а иногда нет...
Цитата: Злоп от 02 марта 2025, 13:47нет - зануляй все инициализации модуля и полностью закооментарь ПриНачалеРаботыСистемы
Совсем не могу, оно нужно...
А для пробы - не понятно сколько и как тестировать... Оно может при первой пробе вылететь, а может и 20 раз нормально отработать, а на 21, после включения ТО сработать... И не факт, что ТО бут будет "при делах"...
Цитата: Злоп от 02 марта 2025, 13:47а то я знаю вас, навпихивают всяких ОО, напоминалок, автовыгрузок в соседние базы при каждом чихе и прочую муйню..
Да нет там ничего такого особенного.

Можно попробовать ТО по одному отключать... Грешу на сканер, там ВК ScanOpos, еще принтер этикеток есть - но, он не у всех, у некоторых, у кого это наблюдается, нет никакого принтера...
А, ну, еще ТСД тоже с ВК, и есть почти у всех.
А остальное - там не должно быть. проблем, остаются только кассы, но они без всяких ВК подключаются, там просто обмен файлами XML.
Название: Re: Зависает 7.7 при выходе?
Отправлено: Djelf от 02 марта 2025, 16:55
Цитата: MWW_Ruza от 02 марта 2025, 13:33Просто зависание идет уже после появления этого вопроса и нажатия на "Да"...
Сомневаюсь что это виновато. Этот код в FormEx лет 10 вроде не менялся,  проблем не было замечено.
Название: Re: Зависает 7.7 при выходе?
Отправлено: Злоп от 03 марта 2025, 01:07
Цитата: MWW_Ruza от 02 марта 2025, 14:13Совсем не могу, оно нужно...
для работы - да, оно нужно.
для выяснения где глючит - оно не нужно.
Название: Re: Зависает 7.7 при выходе?
Отправлено: Злоп от 03 марта 2025, 01:09
#10: рецепт дан. делать надо тупо и просто, избегая неопределенностей. и будет ясно.
мониторь диски. при траблах на дисках может быть похожая ситуация. подвисает/замирает.
Название: Re: Зависает 7.7 при выходе?
Отправлено: ЯнСмит от 03 марта 2025, 10:21
Цитата: MWW_Ruza от 26 февраля 2025, 22:30От чего может происходить сабж?
В какую сторону копать?
А установлен ли для движка 1С режим совместимости WinXPsp3, если нет - настоятельно рекомендую
Название: Re: Зависает 7.7 при выходе?
Отправлено: Djelf от 03 марта 2025, 22:42
Цитата: MWW_Ruza от 01 марта 2025, 22:26отом curl1c (без создания глобальной переменной, естественно, как в редми написано)
В ридми не отмечена важная вешь, libcurl при установке параметров пишет их в коллекцию slist.
 slist дурная коллекция, она при установке параметра дописывает его в slist, а удалить элемент из коллекции slist нельзя.
Из-за этого был сделан метод Карлик.Инит() (который должен был бы чистить slist) но оказалось что он скроее вредит, чем помогает, а скорость создания объекта Карлик не требует его кеширования в глобальной переменной.
Также были переработаны методы кеширования (соединений, передачи ssl сертификатов и т.п.), они теперь не зависят от создания объектов, они глобальные для всей ВК (т.е. работают для любых созданных карликов), что позволило значительно ускорить обмены данных, даже в случае создания новых объектов.
Стресс-тесты в Карлике проходят без изъяна, Карлик - не виноват! Точно, точно ;)
Название: Re: Зависает 7.7 при выходе?
Отправлено: Djelf от 03 марта 2025, 22:52
А вот то что ВК загружаются динамически это плохо!
Так бы ты смог "Техподдержку" выложить, но если динамически...
Можно доработать для скидывания в каталог, при зависании это может помочь, если примерное время известно (скидывание в каталог будет до момента зависания).
Название: Re: Зависает 7.7 при выходе?
Отправлено: Злоп от 04 марта 2025, 00:14
А что значит "ВК загружаются динамически"..?
Название: Re: Зависает 7.7 при выходе?
Отправлено: Djelf от 04 марта 2025, 20:55
Цитата: Злоп от 04 марта 2025, 00:14А что значит "ВК загружаются динамически"..?
Это рудимент старых систем, как пример - нам не нужен вывод в современный xls, мы не подключаем йоксель.
На текущий момент нет уже таких жестких ограничений ни по памяти, ни по ресурсам, чтобы это соблюдать.
Название: Re: Зависает 7.7 при выходе?
Отправлено: MWW_Ruza от 06 марта 2025, 01:56
Цитата: MWW_Ruza от 02 марта 2025, 13:33(https://content.foto.my.mail.ru/mail/m_w_w/1/i-607.jpg)

Это, как я понимаю, отку-да-то из формекса прилетело? Специально я этого не делал, оно "само" :-)))

Кстати, я заметил, что этот "счетчик" появляется не всегда...
Не уверен, что это как-то влияет на сабжевую проблему, но, когда он не появляется, то после нажатия на "Да", всегда закрытие происходит без зависания. А когда "часики тикают", то эпизодически случаются зависания.
Но возможно, что это "статистическая погрешность".
Но, все равно не понятно, откуда этот таймер берется...
Процедура "ПриЗавершенииРаботыСистемы()" абсолютно стандартная, она там и была "отродясь", я ее не трогал:
// Предопределенная процедура.
//
Процедура ПриЗавершенииРаботыСистемы()
   Если ЗавБезВопроса = 0 Тогда
       Если глЗначениеПоУмолчанию("НеЗапрашиватьПодтверждениеПриВыходе") = 0 Тогда
         Если Вопрос("Вы действительно хотите закрыть программу?","Да+Нет") = "Нет" Тогда
             СтатусВозврата(0);
            Возврат;
         КонецЕсли;       
       КонецЕсли;
      ОткрытьФормуМодально("Обработка.ТорговоеОборудование", "Отключить");
   КонецЕсли;
КонецПроцедуры // ПриЗавершенииРаботыСистемы()

В отключении торгового оборудования, тоже ничего особенного не происходит...
На всякий случай в отключение сканера добавил "Сканер = 0;", понаблюдаю.
Но, все равно, откуда счетчик секунд на "Вопросе" о завершении работы?
Название: Re: Зависает 7.7 при выходе?
Отправлено: MWW_Ruza от 06 марта 2025, 02:05
Ха... Только сейчас, по картинке и тексту сообщения, заметил, что текст вопроса то разный :-)
Просто картинка и фрагмент модуля из разных конфигураций.
Вот, от той, из которой скриншот:

// Предопределенная процедура.
//
Процедура ПриЗавершенииРаботыСистемы()
   
   Если глЗначениеПоУмолчанию("НеЗапрашиватьПодтверждениеПриВыходе") = 1 Тогда
      Если Вопрос("Закончить работу с программой?", "Да+Нет", 10)="Нет" Тогда
         СтатусВозврата(0);
         Возврат;
      КонецЕсли;
   КонецЕсли;
   
   ОткрытьФормуМодально("Обработка.ТорговоеОборудование", "Отключить");
   
КонецПроцедуры // ПриЗавершенииРаботыСистемы()

И таймер на 10 секунд там есть.
А на форму вопроса его похоже ФормЕкс выводит автоматом, так, как загружен.
Название: Re: Зависает 7.7 при выходе?
Отправлено: Arbuz от 07 марта 2025, 17:20
Попробуй в призавершении обнулять (в порядке обратном созданию) глобальные переменные с объектами. Мне как-то помогло при спорадических падениях на выходе из 1С.
Название: Re: Зависает 7.7 при выходе?
Отправлено: MWW_Ruza от 07 марта 2025, 23:59
Ок. Попробую.
Название: Re: Зависает 7.7 при выходе?
Отправлено: Злоп от 08 марта 2025, 03:03
Таймер на предупреждение выводит формекс, да
Название: Re: Зависает 7.7 при выходе?
Отправлено: trdm от 08 марта 2025, 11:18
Цитата: Arbuz от 07 марта 2025, 17:20Попробуй в призавершении обнулять (в порядке обратном созданию) глобальные переменные с объектами. Мне как-то помогло при спорадических падениях на выходе из 1С.
Было у меня актуально когда использовал реконекшионз найтив при перепроведении документов. Надо было сбрасывать все "курсоры" блабла = СоздатьОбъект("Спрвочнгик.*")
Название: Re: Зависает 7.7 при выходе?
Отправлено: MWW_Ruza от 03 мая 2025, 17:04
Вроде победил :-)

И как ни странно, но все-таки это был FormEx...
Везде, где это наблюдалось - стояла какая-то старая, возможно "промежуточная, не релизная" версия.
После обновления до актуальной - проблема зависания при выходе исчезает.
Сказать, какая именно - не могу, всем, с кем часто работаю, заменил на новую.
Да это я думаю и не нужно уже.
Есть новая, проблемы с ней нет, чего о старой вспоминать.
Но, если очень нужно - могу если конечно вылезет у кого-то еще (скорее всего, пока не всем поменял), тогда посмотрю.
Название: Re: Зависает 7.7 при выходе?
Отправлено: Злоп от 04 мая 2025, 21:49
Ну это трындец. Формекс ставить надо гдето после 138 версии, а лучше 198 или 199
Название: Re: Зависает 7.7 при выходе?
Отправлено: MWW_Ruza от 05 мая 2025, 16:40
Само собой разумеется!
Но, не всегда же эти версии были.
Ставилось 100 лет назад, какой был на тот момент, и с тех пол не менял, так, как ничего нового в конфу не добавлял, что требует обновление ФормЕкса...
Ну, 138, это ты загнул... Сейчас пробежался по всем копиям баз, какие есть - самый старый нашел 142...
Но, думаю, там еде фокусы с выходом были, релизы свежее были, что-нибудь 170+...
Помню, массово обновлял, когда в него Алексей добавил метод "НарисоватьШтрихКод". Какой это релиз был, х.з... Но, давно это было.
Название: Re: Зависает 7.7 при выходе?
Отправлено: Arbuz от 05 мая 2025, 17:31
Да, последние версии существенно стабильней, не говоря уже про функционал. У меня в проде стоит 199.

Цитата: Злоп от 15 января 2025, 21:23Или хотя бы 200 с зафиксированным перечнем известных, но непоправленных "проблем"..?
Ждём демиурга и надеемся.  ::)

Кстати, надо как-то собрать в одном месте этот перечень...
Название: Re: Зависает 7.7 при выходе?
Отправлено: MWW_Ruza от 07 июля 2025, 11:30
В общем, все, что было выше - частоту проявления проблемы значительно уменьшило, но не ликвидировало ее совсем...
Долгими и внимательными наблюдениями, выяснил:

Все это появляется тогда, когда после появления окошка вопроса подтверждения завершения работы программы, не важно с третьим параметром (таймаут), или без, висящее бесконечно, прямо сразу ткнуть "Да". Чаще всего - так и виснет.
Если выждать несколько секунд, а потом нажать "Да", то все ОК, практически всегда.
Такое ощущение, что что-то не успевает "отработать-подготовиться" к завершению работы.
Название: Re: Зависает 7.7 при выходе?
Отправлено: MWW_Ruza от 07 июля 2025, 13:42
Х.з., от чего это происходит, думаю в отключении ТО что-то не успевает отработать, может сканер, может еще что-то...
Пока сделал вот такой "лютый костыль" -

Процедура ЗавершитьРаботу()
Если ЗавБезВопроса = 0 Тогда
Секунды = "";
НовСекунды  = "";
ТекущееВремя(,, Секунды);
    Если глЗначениеПоУмолчанию("НеЗапрашиватьПодтверждениеПриВыходе") = 0 Тогда
Если Вопрос("Вы действительно хотите закрыть программу?", 4) = 7 Тогда
    СтатусВозврата(0);
Возврат;
КонецЕсли;       
КонецЕсли;
ОткрытьФормуМодально("Обработка.ТорговоеОборудование", "Отключить");
ТекущееВремя(,, НовСекунды);
Пока (НовСекунды < Секунды + 2) Или (НовСекунды < 2) Цикл
ТекущееВремя(,, НовСекунды);   
КонецЦикла;
ЗавершитьРаботуСистемы();
КонецЕсли;
КонецПроцедуры // ПриЗавершенииРаботыСистемы()

//******************************************************************************
// Предопределенная процедура.
//
Процедура ПриЗавершенииРаботыСистемы()
ЗавершитьРаботу();
КонецПроцедуры // ПриЗавершенииРаботыСистемы()

Задержка закрытия программы на две секунды после отключения ТО...
Понаблюдаю.

PS "ЗавБезВопроса" - это глобальная переменная, взводится в 1, процедурой принудительного завершения работы, типа "в 23:00 нефик делать в программе, идите отдыхайт!". Надоело, что некоторые раздолбаи бросают программу не закрытую на ночь, ни архив нормально не сделать, ни что-то обновить. В общем, к сабжу это не имеет отношения.
Название: Re: Зависает 7.7 при выходе?
Отправлено: Злоп от 07 июля 2025, 14:44
OLE есть?
Название: Re: Зависает 7.7 при выходе?
Отправлено: MWW_Ruza от 07 июля 2025, 16:23
Среди ТО - нет. Сканер, стандартной 1с ВК ScanOpos, и... А и все. Остальное, только файловые обмены.
Есть АктивеИксы на живой поиск номенклатуры, ну и XML для касс и ЕГАИС/ЭДО формируются/читаются через MS DOM, но, я думаю, это немного не то. Так, что, по сути нет.
Да и так, ничего не припомню. Загрузка чего-то через ексель? Ну, может где-то и есть, но, это не на постоянной основе, а редко, разово.
Название: Re: Зависает 7.7 при выходе?
Отправлено: MWW_Ruza от 07 июля 2025, 20:11
Пересмотрел сейчас еще раз подключение/отключение ТО...
Ну, там много всего, но реально драйвера грузятся только на сканер, ну, у некоторых есть еще и весы CAS с печатью этикеток. Почему у некоторых, магазы продуктовые? Да потому, что не у всех весы подключены к 1С, у некоторых это всякие CAS ER/AD/AP, которые без печати и просто к кассовым компам подключены, соответственно в 1С для них ничего не грузится. Сабжевая проблема наблюдается у всех, независимо от наличия/отсутствия подключенных весов, так, что отметаем.
ТСД-? Только файловый обмен, и CASIO, и 2D на Андроидах, с БаркодеХарвестер. Для последнего - обмен через формирование файлов xlsx через ADO, но, это пока не вышло в "широкие массы", и работает только у меня на домашнем стенде. Так, что тоже мимо.
ПрайсЧекер - файловый обмен, текстовиками, вместе с загрузкой XML на кассы, еще и текстовики для программы ПЧ.
Всяких банковских терминалов, дисплеев покупателя, касс(ФР) - не используется, так, как это все на кассах-фронтах.
Обмен с фронтами - файлами XML.
Так, что - можно грешить только на ScanOpos, или саму 1С, возможно ВК...
ВК конечно куча грузится. Но, не думаю, что в них проблема.
Да и костыль с задержкой, вроде пока работает.
Название: Re: Зависает 7.7 при выходе?
Отправлено: MWW_Ruza от 07 июля 2025, 21:31
Цитата: MWW_Ruza от 07 июля 2025, 20:11еще и весы CAS с печатью этикеток

Вообще-то я туплю. Он тоже не грузится при подключении/отключении, он в системе зареген.
А при подключении/отключении просто проверяется наличие/отсутствие сохраненных параметров подключения, без обращения к драйверу, просто в табло месагу выводит, что меня и сбило с толку... Делал это гду примерно в 2010, и с тех пор не трогал, уже и забыл. Так, что, весы точно мимо.
Название: Re: Зависает 7.7 при выходе?
Отправлено: Злоп от 08 июля 2025, 00:33
Formex - свежий?
Название: Re: Зависает 7.7 при выходе?
Отправлено: Злоп от 08 июля 2025, 00:34
а так - тупо фиксишь ситуацию когда подвисает выхож (без твоего костыля).
начинаешь отрубать ВК и проверять выход.
на какой-то ВК - бинго!
Название: Re: Зависает 7.7 при выходе?
Отправлено: MWW_Ruza от 08 июля 2025, 09:34
Цитата: Злоп от 08 июля 2025, 00:33Formex - свежий?

Конечно. Последний. Но и с блолее ранними эффект проявлялся.
Название: Re: Зависает 7.7 при выходе?
Отправлено: MWW_Ruza от 08 июля 2025, 09:44
Компоненты в порядке загрузки при старте системы:
1CPP.dll
FormEx.dll
curl1c.dll
XML_DOM   = CreateObject("MSXML2.DOMDocument.6.0");
SpreadSheetTests.dll - снимает ограничение на длину имен файлов с путями, необходима для деклараций и ЭДО в варианте загрузки из файлов.
ПодключитьВнешнююКомпоненту("AddIn.Moxel.Converter"); // компонента для в меню возможности сохранения как Эксель-2007 - подключаю не в у всех, точнее мало у кого... Виснет не зависимо от нее.
1sqlite.dll

Собственно все. ScanOpos грузится в обработке ТО, вызываемой тоже отсюда.
Много еще чего, но, они не грузятся, зарегены в системе и обращение к ним только при необходимости, просто открыть/закрыть - не используются, например v7plus.dll.

Название: Re: Зависает 7.7 при выходе?
Отправлено: Злоп от 08 июля 2025, 11:59
И что - если зайти, появилось главное окно, выйти - виснет 1с?
Главное окно закрылось, а процесс в памяти остался?
В таком случае отрубай последовательно вк и вход-выход, пока ситуация не стабилизируется.
Последовательно убираешь все, что самописное (доп.ГМ?), упрощаешь ПриНачалеРаботыСистемы и аналогичное при завершении - пока ситуация не стабилизируется
Название: Re: Зависает 7.7 при выходе?
Отправлено: Злоп от 08 июля 2025, 12:01
Я бы так для начала делал
Название: Re: Зависает 7.7 при выходе?
Отправлено: Харлампий Дымба от 08 июля 2025, 18:08
А мне всё-таки нравится версия со счетчиком Formex.
Потому что вот для этого кода
Если Вопрос("Закончить работу с программой?", "Да+Нет", 10)="Нет" Тогдав случае потери фокуса (после вопроса свернули окно / переключились на другую программу) поведение будет различным в зависимости от того загружен Formex или нет.
Если Formex не загружен, то отсчет 10 секунд прервется и возобновится, только когда окно 1С опять станет активным.
Если Formex загружен, то отсчет 10 секунд не прервется и если окно 1С сделать активным по истечении 10 секунд, то работа Вопрос() завершится именно в этот момент.

Название: Re: Зависает 7.7 при выходе?
Отправлено: Злоп от 08 июля 2025, 19:11
Тут бы еще был бы вариант чтобы счётчик бежал и при неактивном окне...
Название: Re: Зависает 7.7 при выходе?
Отправлено: MWW_Ruza от 08 июля 2025, 19:24
Цитата: Злоп от 08 июля 2025, 11:59Главное окно закрылось, а процесс в памяти остался?

Да нет же. Окно не закрывается, остается висеть навсегда и окошко вопроса тоже.
Никакого счетчика секунд в вопросе уже давно нет. Ни формексовского, ни штатного таймера из вопроса.
Сейчас хотел видео записать, как это у клиента происходит, закомментировал "свой костыль" раз пять подряд попробовал - бесполезно, не воспроизводится, все закрывается мгновенно и ничего не зависает.
И в связи с этим, пришла еще одна идея - сейчас рабочий день в магазине, касса (кассовый компьютер) работает, в сети доступен. А обычно, я все свои изыскания провожу, когда касса уже выключена. А он видимо при подключении/отключении кассы проверяет доступностиь каталога обмена (методом СуществуетФайл(***)), который сейчас доступен, а после окончания рабочего дня - нет.
Вот может на этом он и спотыкается...
Проверю после 21 часа.
Название: Re: Зависает 7.7 при выходе?
Отправлено: MWW_Ruza от 08 июля 2025, 19:29
Но. вообще - нет.
При подключении, действительно проверяет, при отключении только сообщения выводит:
Процедура Отключить()
// обмен данными производится через текстовые файлы
Если ККМ.РежимККМ = Перечисление.РежимыККМ.ФР Тогда
ВывестиСообщение("ВНИМАНИЕ!!! ККМ не поддерживает режим фискального регистратора!");
ИначеЕсли ККМ.РежимККМ = Перечисление.РежимыККМ.OffLine Тогда
ПозицияСписка=0;
Если глККМOffLine.НайтиЗначение(ККМ,ПозицияСписка,"ККМ") > 0 Тогда
//СписокККМ_OFFLine.УстановитьЗначение(ПозицияСписка, ККМ, "", 1);
ВывестиСообщение("ККМ (режим Off-Line) отключена");
КонецЕсли;
ИначеЕсли ККМ.РежимККМ=Перечисление.РежимыККМ.OnLine Тогда
ВывестиСообщение("ВНИМАНИЕ!!! ККМ не поддерживает режим ON-Line!");
КонецЕсли;

КонецПроцедуры  //Отключить

Вот это: ВывестиСообщение("ККМ (режим Off-Line) отключена");
Название: Re: Зависает 7.7 при выходе?
Отправлено: Злоп от 08 июля 2025, 20:29
Убери нафиг вопрос о закрытии вообще.
Название: Re: Зависает 7.7 при выходе?
Отправлено: MWW_Ruza от 08 июля 2025, 22:20
Радикально...
Название: Re: Зависает 7.7 при выходе?
Отправлено: Злоп от 08 июля 2025, 23:06
Цитата: MWW_Ruza от 08 июля 2025, 22:20Радикально...
А в чем глубокий смысл этого вопроса при устоявшемся рабочем процессе?
ну закроют СЛУЧАЙНО 1С (если есть что-то несохраненное - выдастся вопрос штатный), откроют заново.
Название: Re: Зависает 7.7 при выходе?
Отправлено: item от 09 июля 2025, 09:35
Поддерживаю. Вопрос ПриЗавершенииРаботы это зло.
Система убивает АктивИксы еще до Вопроса, и неизвестно, что она там еще обнуляет.
Название: Re: Зависает 7.7 при выходе?
Отправлено: Харлампий Дымба от 09 июля 2025, 16:26
Вот готовый пример как сторонняя dll подвешивает процесс 1С именно при завершении работы.
На абсолютно пустой тестовой базе (без ничего вообще - создаю из пустой папки) внешней обработкой парсим строку с помощью parser.dll. Если в процессе парсер спотыкается (даже через Попытка), то потом при выходе 1cv7.exe остается висеть фоновой задачей. Если парсим строку без ошибки - проблем при выходе не возникает.

Процедура Сформировать()

Если ФС.СуществуетФайл(КаталогИБ()+"parser.dll")=1 Тогда
    Если ЗагрузитьВнешнююКомпоненту(КаталогИБ()+"parser.dll")<>1 Тогда
        Сообщить("Не удалось загрузить компоненту parser.dll. Воqди под админом или сделай regsvr32.exe parser.dll!","!");
        Возврат;
    КонецЕсли;
КонецЕсли;

Парсер = СоздатьОбъект("AddIn.Parser");

СтримСОшибкой="Dialogs"",
|{""Frame"",
|{""-11"",""0"",""0"",""0"",""400"",""0"",""0"",""0"",""204"",""1"",""2"",""1"",""34"",""MS Sans Serif"",""453"",""142"","""","""","""",""0"","""",""1"",""1"",""6"",""29"",""-1"",""0"",""0"",
|{""0"",
|{""Основной"",""1""}},""1"",""1""}},
|{""Controls""},
|{""Cnt_Ver"",""10001""}}";

СтримБезОшибки="{""Dialogs"",
|{""Frame"",
|{""-11"",""0"",""0"",""0"",""400"",""0"",""0"",""0"",""204"",""1"",""2"",""1"",""34"",""MS Sans Serif"",""320"",""166"","" "","""","""",""0"","""",""1"",""1"",""6"",""29"",""-1"",""0"",""0"",
|{""0"",
|{""Основной"",""1""}},""1"",""1""}},
|{""Controls"",
|{""Закрыть"",""BUTTON"",""1342177291"",""70"",""143"",""54"",""14"",""0"",""0"",""4152"","""",""#Закрыть"","""",""-1"",""U"",""0"",""0"",""0"",""0"",""0"","""","""","""",""0"",""-11"",""0"",""0"",""0"",""0"",""0"",""0"",""0"",""0"",""0"",""0"",""0"",""0"",""MS Sans Serif"",""-1"",""-1"",""0"",""Основной"",""{""""0"""",""""0""""}""},
|{""ОК"",""BUTTON"",""1342181387"",""10"",""143"",""54"",""14"",""0"",""0"",""4153"","""",""#Записать? Закрыть"","""",""-1"",""U"",""0"",""0"",""0"",""0"",""0"","""","""","""",""0"",""-11"",""0"",""0"",""0"",""0"",""0"",""0"",""0"",""0"",""0"",""0"",""0"",""0"",""MS Sans Serif"",""-1"",""-1"",""0"",""Основной"",""{""""0"""",""""0""""}""}},
|{""Cnt_Ver"",""10001""}}";


Попытка
    Узлы = Парсер.ParserRecursiveList(СтримСОшибкой);
    Сообщить("Всё нормально");
Исключение
    Сообщить("Теперь не выйдешь");
КонецПопытки;   

КонецПроцедуры

Название: Re: Зависает 7.7 при выходе?
Отправлено: MWW_Ruza от 12 августа 2025, 13:02
Цитата: Злоп от 08 июля 2025, 20:29Убери нафиг вопрос о закрытии вообще.

Странно, но факт... Без вопроса - уже месяц полет нормальный, не зависло ни разу...

Что не так с штатным вопросом? Непонятно. Ни с ТаймАутом, ни без, стабильно не работает в ПриЗавершенииРаботыСистемы...
Всякие танцы с бубном, типа задержек и т.п., помогают конечно, но полностью проблему не решают - то ничего-ничего, может много раз подряд, а то ни с того ни с сего зависнет, не предсказуемо, закономерность уловить не удалось...
Название: Re: Зависает 7.7 при выходе?
Отправлено: MWW_Ruza от 11 сентября 2025, 21:55
Блин...
Оно вернулось.
Новый клиент, чистый комп, Вин7 х64, конфа и набор ВК те-же.
Штатный вопрос - отключен.
Зависает при выходе, если что-то делали в программе. Например, с документами работали. Если просто открыть/закрыть - то не виснет.
Хрень какая-то. Уже и не знаю, куда копать. Похоже что-то с виндой или железякой.
Радует одно - оно у него повторяется, тоесть не как раньше было, что хрен поймаешь, а стабильно...
Тут, ничего интересного не вижу:
(https://content.foto.my.mail.ru/mail/m_w_w/590/h-625.jpg)
Вообще не понятно, куда копать...
В журнале "Система" в это время ошибок нет.

Название: Re: Зависает 7.7 при выходе?
Отправлено: trad от 12 сентября 2025, 09:21
>>если что-то делали в программе.
Добиться повторяемости
Потом по одной выпиливать ВК (начать с самых незначительных) и связанный с ним функционал
Название: Re: Зависает 7.7 при выходе?
Отправлено: Злоп от 12 сентября 2025, 15:55
Ставлю на функционал, связанный с обменами.
Название: Re: Зависает 7.7 при выходе?
Отправлено: MWW_Ruza от 14 сентября 2025, 12:21
Цитата: Злоп от 12 сентября 2025, 15:55Ставлю на функционал, связанный с обменами.

У меня только мысли, по обмену с кассами - активно используются "XML_DOM", при чем для выгрузки на кассы даже несколько объектов такого типа параллельно, так, как там набор ХМЛ файлов для обмена формируется.
Может их "принудительно прибивать" после формирования выгрузки на кассы нужно? Висят где-то в памяти, и не дают закрыться программе?
Проверить это можно, понаблюдав, только если в сеансе была загрузка касс зависает, или и без этого тоже... Попробую напрячь клиента, что-бы отловить закономерность.

Потому как вся масса ВК - тут точно ни при чем. До "переезда" на новый комп, у него так-же висло, а там вообще ХРюша была, и соответственно конфа там была "урезанная", без всех моих наворотов, без загрузки всех ВК(кроме штатной СканОпос), но ДОМ для формирования ХМЛ использовался(минимум - обмен с кассами там был), и  говорит, что все точно-так-же висло при выходе...
В общем, направление понятно, продолжаю наблюдать...
Название: Re: Зависает 7.7 при выходе?
Отправлено: trad от 15 сентября 2025, 12:59
Использую DOM вдоль и поперек, проблем никаких не наблюдаю
Правда использую Msxml2.DOMDocument, но это, кмк, не существенно
Название: Re: Зависает 7.7 при выходе?
Отправлено: MWW_Ruza от 16 сентября 2025, 13:02
У меня:

XML_DOM = CreateObject("MSXML2.DOMDocument.6.0");

Тоже самое.
Название: Re: Зависает 7.7 при выходе?
Отправлено: MWW_Ruza от 16 сентября 2025, 13:14
Х.з.... Я бы подумать мог, что опять с карликом за ресурсы "дерется", была такая проблема на старой версии карлика, решалась загрузкой ВК до первого обращения к объекту DOM, потом Djelf пофиксил, проблема ушла...
Но, скорее всего, карлик тут ни пи чем - до переезда на новый комп, говорят, что висло точно так-же... А тогда там карлик, как и остальные ВК не использовались.
Но, тут - ключевое слово "говорят"... Говорить они могут все, что угодно, а что там на самом деле было - кто теперь с точностью определит :-(