Зависает 7.7 при выходе?

Автор MWW_Ruza, 26 февраля 2025, 22:30

« назад - далее »

Злоп

Убери нафиг вопрос о закрытии вообще.

MWW_Ruza


Злоп

Цитата: MWW_Ruza от 08 июля 2025, 22:20Радикально...
А в чем глубокий смысл этого вопроса при устоявшемся рабочем процессе?
ну закроют СЛУЧАЙНО 1С (если есть что-то несохраненное - выдастся вопрос штатный), откроют заново.

item

Поддерживаю. Вопрос ПриЗавершенииРаботы это зло.
Система убивает АктивИксы еще до Вопроса, и неизвестно, что она там еще обнуляет.

Харлампий Дымба

Вот готовый пример как сторонняя 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(СтримСОшибкой);
    Сообщить("Всё нормально");
Исключение
    Сообщить("Теперь не выйдешь");
КонецПопытки;    

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


MWW_Ruza

Цитата: Злоп от 08 июля 2025, 20:29Убери нафиг вопрос о закрытии вообще.

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

Что не так с штатным вопросом? Непонятно. Ни с ТаймАутом, ни без, стабильно не работает в ПриЗавершенииРаботыСистемы...
Всякие танцы с бубном, типа задержек и т.п., помогают конечно, но полностью проблему не решают - то ничего-ничего, может много раз подряд, а то ни с того ни с сего зависнет, не предсказуемо, закономерность уловить не удалось...

MWW_Ruza

Блин...
Оно вернулось.
Новый клиент, чистый комп, Вин7 х64, конфа и набор ВК те-же.
Штатный вопрос - отключен.
Зависает при выходе, если что-то делали в программе. Например, с документами работали. Если просто открыть/закрыть - то не виснет.
Хрень какая-то. Уже и не знаю, куда копать. Похоже что-то с виндой или железякой.
Радует одно - оно у него повторяется, тоесть не как раньше было, что хрен поймаешь, а стабильно...
Тут, ничего интересного не вижу:

Вообще не понятно, куда копать...
В журнале "Система" в это время ошибок нет.


trad

>>если что-то делали в программе.
Добиться повторяемости
Потом по одной выпиливать ВК (начать с самых незначительных) и связанный с ним функционал

Злоп

Ставлю на функционал, связанный с обменами.

MWW_Ruza

Цитата: Злоп от 12 сентября 2025, 15:55Ставлю на функционал, связанный с обменами.

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

Потому как вся масса ВК - тут точно ни при чем. До "переезда" на новый комп, у него так-же висло, а там вообще ХРюша была, и соответственно конфа там была "урезанная", без всех моих наворотов, без загрузки всех ВК(кроме штатной СканОпос), но ДОМ для формирования ХМЛ использовался(минимум - обмен с кассами там был), и  говорит, что все точно-так-же висло при выходе...
В общем, направление понятно, продолжаю наблюдать...

trad

Использую DOM вдоль и поперек, проблем никаких не наблюдаю
Правда использую Msxml2.DOMDocument, но это, кмк, не существенно

MWW_Ruza

У меня:

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

Тоже самое.

MWW_Ruza

Х.з.... Я бы подумать мог, что опять с карликом за ресурсы "дерется", была такая проблема на старой версии карлика, решалась загрузкой ВК до первого обращения к объекту DOM, потом Djelf пофиксил, проблема ушла...
Но, скорее всего, карлик тут ни пи чем - до переезда на новый комп, говорят, что висло точно так-же... А тогда там карлик, как и остальные ВК не использовались.
Но, тут - ключевое слово "говорят"... Говорить они могут все, что угодно, а что там на самом деле было - кто теперь с точностью определит :-(