При работе с сервисом 1С-Отчетность пользователи часто сталкиваются с критической ошибкой: в процессе обновления программного модуля на отметке 66% происходит «Аварийное завершение» работы программы. Эта проблема не зависит от версии платформы (встречается на 8.3.16, 8.3.18 и выше) и часто сопровождается системным кодом ошибки 1114 (0x0000045A), указывающим на сбой инициализации динамической библиотеки extui.dll. В этой статье мы подробно разберем, почему это происходит, и рассмотрим пошаговые методы решения проблемы.
Проанализируем техническую сторону процесса. Этап 66% является критическим, так как в этот момент система завершает скачивание временных файлов обновления и приступает к регистрации внешней компоненты электронного обмена в операционной системе. Программа пытается подгрузить библиотеку extui.dll (или ее временную копию с расширением .tmp). Если в системе недостаточно прав, заблокированы временные папки или повреждена очередь транспортных сообщений, процесс прерывается аварийно.
Как показывает практика, одной из самых частых причин зависания является накопление или повреждение данных в регистрах обмена. Рассмотрим, как выполнить «мягкую» и «жесткую» очистку.
Для начала попробуем очистить только входящие/исходящие сообщения в интерфейсе 1С-Отчетности. Если это не помогает, проанализируем более глубокий метод:
ТранспортноеСообщение.В некоторых случаях требуется ручное удаление записей из регистров сведений, связанных с электронным документооборотом с контролирующими органами. Посмотрим на пример логики, которую можно применить в обработке для очистки:
НаборЗаписей = РегистрыСведений.АрхивДанныхРегламентированнойОтчетности.СоздатьНаборЗаписей();
НаборЗаписей.Отбор.Объект.Установить(СсылкаНаСообщение);
НаборЗаписей.Записать(); // Очищаем связанные записи
Проанализируем ситуацию, когда ошибка возникает только у определенных пользователей. Если у пользователя с правами Локального администратора обновление проходит успешно, а у обычного бухгалтера — нет, проблема заключается в ограничении прав на запись в системные каталоги или реестр.
%AppData%\1C\1cv8\ExtCompDir%LocalAppData%\TempC:\Program Files\1cv8\).Выясним, где хранятся исполняемые модули отчетности. 1С загружает внешние компоненты в специальную папку профиля пользователя. Если файл extui.dll был загружен некорректно, последующие попытки обновления будут использовать «битый» файл.
%AppData%\1C\1cv8\.ExtCompDir и полностью удалим ее содержимое. Не бойтесь, программа заново скачает необходимые компоненты при следующем обращении к 1С-Отчетности.eb4a6... в Local и Roaming).Если в логе ошибки (как в сообщении 5) фигурирует KERNELBASE.dll и extui.dll с кодом 1114, это сигнализирует о проблеме инициализации DLL. Рассмотрим системные настройки, которые могут блокировать работу компоненты:
1cv8c.exe. Зайдем в Свойства системы — Дополнительно — Быстродействие — Параметры — Предотвращение выполнения данных. Рекомендуется установить режим «Включить DEP только для основных программ и служб Windows».Рассмотрим ситуацию, когда загрузка обрывается из-за внешнего вмешательства средств защиты. Поскольку на этапе 66% происходит скачивание исполняемого кода, антивирусы (например, Kaspersky или сетевые экраны с DPI) могут распознать этот трафик как угрозу.
1cv8.exe, 1cv8c.exe, а также маски файлов *.tmp в папке Temp.Мы проанализировали основные причины аварийного завершения обновления 1С-Отчетности. Подведем итог: чаще всего проблема решается очисткой папки ExtCompDir или запуском программы от имени администратора. Если же ошибка носит массовый характер для базы данных, следует воспользоваться методом очистки транспортных сообщений за последние периоды. Помните, что использование актуальных релизов платформы 1С и конфигурации (например, БП 3.0 или БГУ 2.0) значительно снижает риск возникновения подобных ошибок, так как разработчики постоянно обновляют механизмы регистрации внешних компонент.