Почему закрывается 1С при нажатии на поле HTML и как это исправить?

Системный администратор 1С v8.3 (Управляемые формы) IT и автоматизация бизнеса
← На главную

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

Анализ причины сбоя

Когда 1С:Предприятие «исчезает» в момент обращения к функционалу отображения HTML, в журнале событий Windows (Просмотр событий) обычно фиксируется ошибка модуля JavaScriptCore.dll с кодом исключения 0xc0000005 (Access Violation). Это свидетельствует о том, что компонент WebKit, отвечающий за отрисовку веб-содержимого внутри 1С, пытается обратиться к недопустимому участку оперативной памяти.

Важно понимать, что WebKit — это сложный движок, который тесно интегрирован с системными библиотеками Windows и графическим стеком. Нестабильность в конкретной сборке платформы 1С может приводить к таким конфликтам, особенно если обновление платформы затронуло версию данного движка.

Пошаговое решение проблемы

Разберем методы, которые помогут диагностировать и устранить проблему. Мы рекомендуем выполнять действия в указанном порядке.

  1. Проверка версии платформы: Это самый важный этап. На практике выяснилось, что проблема носит регрессионный характер. Один и тот же функционал может работать в версии 8.3.22, но приводить к падению в версии 8.3.24.1467. Проанализируйте, на каком релизе работает ваша база, и сравните его с более новыми или стабильными промежуточными сборками.
  2. Тестирование стабильного релиза: Если обновление до актуальной версии 8.3.24.1548 (или выше) устраняет ошибку, необходимо провести плановое обновление платформы на рабочих местах пользователей.
  3. Исключение внешних факторов: Если смена платформы невозможна, стоит обратить внимание на:
    • Драйверы видеокарты: Попробуйте обновить их, так как WebKit активно использует аппаратное ускорение.
    • Антивирусное ПО: Иногда системы контроля памяти (DEP) ошибочно блокируют работу JavaScriptCore.dll. Попробуйте добавить 1cv8.exe в исключения антивируса.

Практические рекомендации по диагностике

Чтобы понять, является ли проблема ошибкой конкретного релиза, выполните следующие шаги:

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

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


<config xmlns="http://v8.1c.ru/v8/tech-log">
    <log location="C:\Logs" history="24">
        <event>
            <eq property="Name" value="EXCP"/>
        </event>
        <property name="all"/>
    </log>
</config>

Настроив такой фильтр, вы сможете отследить, на каком именно действии происходит исключение EXCP. Это даст понимание, какая именно процедура или функция вызывает обращение к ПолеHTMLДокумента.

Заключение

Как показывает опыт, наиболее эффективным методом борьбы с падениями WebKit в 1С является подбор стабильной версии платформы. Рекомендуем всегда иметь в арсенале возможность быстрого отката или обновления платформы на одну-две версии выше или ниже текущей. Если вы столкнулись с падением на релизе 8.3.24.1467, обновление до 8.3.24.1548 является наиболее вероятным способом исправления ситуации без внесения изменений в код конфигурации.

← На главную