К статье
Практический материал

Администрирование · 11 мин

1С 8.3 аварийное завершение программы: причины и способы исправить

Почему 1С 8.3 аварийно завершает работу и как исправить: очистка кэша, тестирование базы, chdbfl, обновление платформы, проверка драйверов и прав.

Аварийное завершение 1С:Предприятие 8.3 — это ситуация, когда платформа закрывается без сохранения данных: с окном «Прекращена работа программы», с ошибкой нарушения целостности или просто молча. Проблема почти всегда локализуется в одном из четырёх мест: повреждённый кэш метаданных, повреждённая информационная база, нестабильная платформа или внешние факторы — антивирус, драйверы, нехватка памяти и прав доступа.

Критично не то, что программа упала, а то, что она могла упасть в момент записи данных. Поэтому прежде чем экспериментировать с настройками, сделайте резервную копию базы: для файлового варианта — скопируйте файл 1Cv8.1CD, для клиент-серверного — выгрузку через конфигуратор (Администрирование → Выгрузить информационную базу) или средствами СУБД. Все дальнейшие действия безопасны только при наличии копии.

Материал построен по принципу «от простого к сложному»: сначала действия, которые занимают минуты и решают большинство случаев, затем диагностика базы и, наконец, сценарии для клиент-серверных вариантов и системных сбоев.

Шаг 1. Зафиксируйте симптомы и сделайте резервную копию

Прежде чем что-то чинить, ответьте на три вопроса: падение происходит у одного пользователя или у всех; при запуске конкретной базы или любой; на этапе запуска, при открытии документа или в случайный момент. Ответы сразу сужают круг поиска: если падает у одного пользователя — почти наверняка кэш или профиль; если у всех — база, сервер или платформа.

Откройте технологический журнал событий Windows (Просмотр событий → Журналы Windows → Приложение) и найдите записи с источником Application Error в момент падения. Там указан модуль, вызвавший сбой: если это 1cv8.exe или 1cv8c.exe — проблема в платформе или данных, если сторонняя DLL (антивирус, драйвер видеокарты) — причина внешняя.

Теперь — копия. Для файловой базы закройте все сеансы и скопируйте файл 1Cv8.1CD из каталога базы в отдельную папку. Для клиент-серверной сделайте выгрузку .dt через конфигуратор. Без этого шага дальнейшие действия, особенно тестирование и исправление, выполнять нельзя: chdbfl и «Тестирование и исправление» физически изменяют файл базы.

Шаг 2. Очистите кэш метаданных — самая частая причина

Кэш метаданных — это временные файлы, которые платформа создаёт на компьютере пользователя для ускорения запуска. При внезапном отключении электричества, обрыве сети или предыдущем аварийном завершении кэш повреждается, и следующая попытка запуска приводит к падению — обычно сразу после ввода пароля или при открытии конкретных форм.

Закройте 1С и завершите процессы 1cv8.exe в диспетчере задач. Перейдите в папки %APPDATA%\1C\1cv8 и %LOCALAPPDATA%\1C\1cv8 (вставьте путь в адресную строку проводника). Внутри будут каталоги с длинными именами вида 5f3a2b1c-... — это кэш по каждой базе. Удалите эти каталоги или, надёжнее, переименуйте их, добавив к имени «_old». При следующем запуске платформа создаст кэш заново.

Порядок действий
  1. 1
    Закройте все сеансы 1С и завершите процессы 1cv8.exe в диспетчере задач
  2. 2
    Найдите папки %APPDATA%\1C\1cv8 и %LOCALAPPDATA%\1C\1cv8
  3. 3
    Переименуйте или удалите каталоги кэша с длинными шестнадцатеричными именами
  4. 4
    Запустите базу и проверьте, воспроизводится ли падение
  5. 5
    Если база файловая и кэш не помог — удалите базу из списка в стартере и добавьте заново по тому же пути

Альтернативный способ без ручного поиска папок: удалите базу из списка информационных баз в окне запуска и добавьте её заново, указав тот же путь. При этом для базы создаётся новый идентификатор и новый кэш. Учтите ограничение: метод не поможет, если повреждён кэш других баз или общие компоненты профиля.

Шаг 3. Проверьте целостность информационной базы

Если очистка кэша не помогла и падение происходит у всех пользователей, подозрение падает на саму базу. Для файлового варианта фирма 1С поставляет утилиту chdbfl.exe — она находится в каталоге bin установленной платформы (например, C:\Program Files\1cv8\<номер версии>\bin\chdbfl.exe).

Запустите chdbfl, укажите путь к файлу 1Cv8.1CD, установите флажок «Исправлять обнаруженные ошибки» и нажмите «Выполнить». Утилита проверит физическую целостность таблиц. Если она сообщает об ошибках и исправляет их — после этого обязательно выполните логическое тестирование в конфигураторе, потому что физическое «исправление» могло удалить повреждённые записи.

Второй инструмент — «Тестирование и исправление» в конфигураторе (Администрирование → Тестирование и исправление). Запускайте его в монопольном режиме, отметив «Реиндексация таблиц» и «Проверка ссылочной целостности». Для больших баз процесс занимает от десятков минут до нескольких часов — планируйте его на нерабочее время.

Контрольные точки

Как проверить результат

Запуск базы после очистки кэша
Норма

База открывается, формы работают стабильно

Тревожный признак

Падение повторяется в том же месте — переходите к проверке базы

Отчёт chdbfl
Норма

«Ошибок не обнаружено»

Тревожный признак

Список повреждённых таблиц — нужно тестирование в конфигураторе и анализ потерянных данных

Журнал событий Windows
Норма

Нет новых ошибок Application Error при работе

Тревожный признак

Ошибки с указанием сторонней DLL — искать внешнюю причину

Шаг 4. Обновите или переустановите платформу

Конкретные релизы платформы 8.3 содержат ошибки, которые проявляются аварийным завершением в определённых сценариях — при работе с СКД, тонким клиентом через веб, фоновыми заданиями. Если падение началось после обновления платформы или, наоборот, платформа давно не обновлялась, это весомый аргумент сменить релиз.

Установите свежий релиз платформы с портала 1С (доступен по подписке ИТС) поверх существующего или рядом — платформы разных версий на одном компьютере сосуществуют без конфликтов. В свойствах базы в списке запуска укажите нужную версию явно. Если падение началось сразу после обновления, откатитесь на предыдущий релиз и проверьте стабильность.

Если версию менять некуда, переустановите текущую: удалите платформу через «Программы и компоненты», перезагрузите компьютер и установите заново. Это восстановит повреждённые библиотеки платформы, которые иногда страдают от антивирусов и неудачных обновлений Windows.

Шаг 5. Исключите внешние факторы: антивирус, память, диск, права

Антивирусы — частый виновник падений 1С, особенно при файловом режиме по сети. Добавьте в исключения антивируса каталог базы, папки кэша (%APPDATA%\1C, %LOCALAPPDATA%\1C) и исполняемые файлы платформы. Для проверки гипотезы временно отключите защиту и поработайте: если падения прекратились — настраивайте исключения, а не отключайте защиту насовсем.

Проверьте свободное место на диске с базой и с профилем пользователя: при нехватке места платформа падает при попытке записи. Оцените объём оперативной памяти: для комфортной работы типовых конфигураций тонкий клиент требует заметных ресурсов, и на машинах с 4 ГБ и меньше возможны сбои при открытии тяжёлых отчётов. Полезно проверить саму память штатным средством Windows (mdsched.exe) и диск командой chkdsk — сбойное «железо» выдаёт себя именно случайными падениями разных программ.

Убедитесь, что у пользователя есть полные права на каталог базы (для файлового режима — чтение, запись, создание и удаление файлов) и на папки кэша. Если база лежит на сетевом ресурсе, проверьте стабильность сети: обрыв соединения во время работы файловой базы — прямой путь к падению и повреждению файла.

Типичные ошибки
01
Запуск chdbfl и «Тестирования и исправления» без копии — при серьёзных повреждениях данные удаляются безвозвратно
02
Очистка кэша на одном компьютере, когда база повреждена и падает у всех пользователей — время потеряно, причина не в кэше
03
Отключение антивируса навсегда вместо настройки исключений — риск заражения сети
04
Размещение файловой базы на сетевом диске при нестабильной сети — повторные падения и порча 1Cv8.1CD

Шаг 6. Особые случаи: клиент-серверный вариант и падения в конкретных операциях

В клиент-серверном режиме к списку причин добавляются служба агента сервера 1С и СУБД (MS SQL, PostgreSQL). Проверьте, что служба «Агент сервера 1С:Предприятия» запущена, а в консоли кластера нет зависших сеансов и рабочих процессов с аномальным потреблением памяти. Перезапуск службы агента часто снимает проблему массовых падений.

На стороне СУБД проверьте журналы: переполненный лог транзакций, нехватку места на диске с данными, блокировки. Для MS SQL полезно выполнить проверку целостности базы средствами СУБД (DBCC CHECKDB) — она не исправляет, но показывает, есть ли физические повреждения.

Если падение привязано к конкретному действию — проведению одного документа, формированию одного отчёта — дело, скорее всего, в данных или коде конфигурации. Попробуйте выполнить ту же операцию на копии базы в конфигураторе с замером, проверьте журнал регистрации на предмет ошибок непосредственно перед падением. Для модифицированных конфигураций откат последнего обновления или доработки — быстрый способ подтвердить гипотезу.

Маршрут решения

Как выбрать действие

Падает только у одного пользователя на одном компьютереОчищайте кэш, проверяйте антивирус и права на этом ПК
Падает у всех пользователей файловой базыКопия → chdbfl → тестирование и исправление в конфигураторе
Падение началось после обновления платформыОткат на предыдущий релиз и проверка стабильности
Клиент-серверный вариант, массовые паденияПерезапуск агента сервера, проверка журналов СУБД и места на дисках
Падает только при одной операции (отчёт, документ)Анализ журнала регистрации и проверка на копии базы

Профилактика: как снизить риск повторных падений

Большинство аварийных завершений — следствие обслуживания «по остаточному принципу». Минимальный набор профилактики: регулярные резервные копии по расписанию (а не вручную «когда вспомнили»), плановое тестирование и исправление файловых баз хотя бы раз в несколько месяцев, исключения в антивирусе, настроенные сразу при установке, и своевременное обновление платформы на проверенные релизы.

Для файловых баз, с которыми работает больше 5–7 пользователей одновременно, рассмотрите переход на клиент-серверный вариант: файловый режим при интенсивной многопользовательской работе по сети объективно уязвимее к повреждениям. И держите под рукой запасной релиз платформы — возможность быстро откатиться после неудачного обновления экономит часы простоя.

Итог

Что важно запомнить

Сначала резервная копия, потом действия. Порядок диагностики: кэш → целостность базы (chdbfl, тестирование) → платформа → внешние факторы (антивирус, память, диск, сеть). Локализация симптома — один пользователь или все — сокращает поиск вдвое.

Частые вопросы

1С падает сразу после ввода пароля — с чего начать?

Почти всегда это повреждённый кэш метаданных конкретной базы. Удалите каталоги кэша в %APPDATA%\1C\1cv8 и %LOCALAPPDATA%\1C\1cv8 или удалите базу из списка и добавьте заново. Если не помогло — проверьте права на каталог базы и исключения антивируса.

Чем отличается chdbfl от «Тестирования и исправления» в конфигураторе?

chdbfl проверяет физическую структуру файла 1Cv8.1CD — целостность страниц и таблиц, и работает только с файловыми базами. «Тестирование и исправление» проверяет логику данных: ссылочную целостность, индексы, итоги. После chdbfl, исправившей ошибки, логическое тестирование обязательно — физическое восстановление могло оставить «висячие» ссылки.

Можно ли восстановить несохранённые данные после аварийного завершения?

Данные, которые не были записаны в базу (непроведённый документ, несохранённый элемент), восстановить нельзя — 1С не ведёт автосохранение введённой информации. Записанные в базу данные не теряются при падении клиента, если только само падение не повредило файл базы.

Падает только один отчёт, остальное работает. Это база сломана?

Не обязательно. Чаще причина в ошибке кода конфигурации, слишком большом объёме выборки (нехватка памяти) или повреждённых данных конкретного регистра. Проверьте журнал регистрации на момент падения, попробуйте сформировать отчёт за меньший период и выполните тестирование базы на копии.

После чистки кэша 1С стала медленно запускаться — это нормально?

Да. Первый запуск после очистки кэша занимает заметно больше времени: платформа заново выгружает и кэширует метаданные конфигурации. Последующие запуски должны вернуться к обычной скорости. Если медленная работа сохраняется — проверяйте диск, антивирус и сеть.

Когда стоит обращаться к специалисту, а не чинить самостоятельно?

Когда chdbfl и тестирование сообщают о массовых повреждениях таблиц с данными, когда база клиент-серверная и ошибки на стороне СУБД, и когда после падения пропали проведённые документы. В этих случаях самостоятельные эксперименты повышают риск безвозвратной потери данных.