Нередко системные администраторы и специалисты 1С сталкиваются с ситуацией, когда после установки новых сертификатов электронной подписи для налоговой отчетности или сервисов ЭДО клиентское приложение 1cv8c.exe или 1cv8.exe аварийно завершает работу при старте сеанса. При этом сбой затрагивает не все информационные базы на компьютере, а только некоторые (например, только Бухгалтерию предприятия или ЗУП), а по локальной сети с других рабочих станций эти же базы открываются абсолютно корректно.
В журнале событий Windows фиксируется сигнатура сбоя APPCRASH, имя проблемного модуля core83.dll и код исключения c0000005 (Access Violation — нарушение прав доступа к памяти). Разберем механизм возникновения этого сбоя и рассмотрим проверенные способы восстановления работоспособности программного комплекса.
Проанализируем механику работы платформы при запуске конфигураций на базе Библиотеки стандартных подсистем (БСП). В типовых решениях (1С:Бухгалтерия 3.0, 1С:ЗУП 3.1) при старте программы выполняется фоновая инициализация криптографической подсистемы для работы с «1С-Отчетностью», сервисами взаимодействия с ФНС, СФР или модулями ЭДО.
Платформа «1С:Предприятие 8.3» обращается к системному хранилищу сертификатов Windows (CryptoAPI). Если в хранилищах Личное, Доверенные корневые центры сертификации или Промежуточные центры сертификации присутствуют просроченные сертификаты, некорректные списки отзыва (CRL) или сертификаты с нарушенной цепочкой доверия, в механизме проверки определенных релизов платформы возникает разыменование нулевого указателя. Это приводит к критической ошибке в библиотеке core83.dll и мгновенному падению процесса.
Сбой проявляется избирательно:
Рассмотрим основной и наиболее надежный способ устранения проблемы. Так как ошибка вызвана недочетом в логике криптографического ядра платформы, разработчики «1С» устранили ее в корректирующих сборках.
Разберем по шагам порядок действий:
Если обновление платформы временно невозможно или не устранило ошибку полностью, проанализируем локальное хранилище сертификатов пользователя Windows. Полное удаление всех сертификатов приведет к потере доступа к торговым площадкам и банк-клиентам, поэтому выполним точечную диагностику.
Пошаговый процесс очистки:
certmgr.msc и нажмем Enter для открытия оснастки сертификатов текущего пользователя.certlm.msc, перейдя в разделы Доверенные корневые центры сертификации и Промежуточные центры сертификации, удалив поврежденные записи и обновив списки отзыва (CRL).Посмотрим на временный обходной вариант, который позволяет запустить информационную базу без падения процесса. Зачастую крах происходит в момент отрисовки рабочего стола и виджетов задач, когда запускаются фоновые обработчики взаимодействия с сетью и проверка подписей.
Выполним следующие действия:
Разберем дополнительные системные меры при устойчивых сбоях:
%LocalAppData%\1C\1cv8\ и %AppData%\1C\1cv8\ (каталоги с буквенно-цифровыми GUID-именами).