Как очистить кэш 1С при запуске программы

· 9 мин

Содержание

Чтобы очистить кэш 1С при запуске, добавьте параметр /ClearCache в поле «Дополнительные параметры запуска» нужной базы или в команду запуска 1cv8.exe. Платформа удалит локальные файлы кэша этой базы и загрузит конфигурацию заново.

Если 1С после обновления показывает старые формы, падает с Ошибка формата потока или просто открывается заметно дольше обычного, причина часто в устаревшем кэше на компьютере пользователя. Ниже пять рабочих способов: от одного параметра до скрипта на всю сеть.

Когда нужна очистка кэша 1С и что при ней удаляется

Клиент 1С:Предприятия 8.3 хранит у себя копию метаданных конфигурации, настройки форм и служебные данные. Так база открывается быстрее: не нужно каждый раз тянуть всё с сервера или из файла базы.

Проблемы начинаются, когда копия перестаёт совпадать с базой. Типичные признаки:

  • 🔁 после обновления конфигурации видны старые формы, отчёты или пункты меню;
  • ❌ при входе или открытии формы появляется Ошибка формата потока;
  • 🐢 запуск и открытие документов стали заметно медленнее без видимой причины;
  • 🧩 после сбоя питания или аварийного закрытия 1С база не открывается или ведёт себя странно;
  • 📋 у одного пользователя ошибка есть, у коллеги на другом компьютере в той же базе — нет.

Последний признак самый показательный. Если на другом ПК всё работает, база цела, а проблема в локальном кэше.

Что удаляется при очистке:

ЧтоУдаляетсяКомментарий
Кэш метаданных конфигурации✅ даЗагрузится заново при следующем входе
Локальные служебные файлы базы✅ даПересоздаются автоматически
Данные информационной базы❌ нетДокументы и справочники не затрагиваются
Список баз в окне запуска❌ нетЕсли не удалять файл ibases.v8i
Пароли и учётные записи❌ нетХранятся в базе, а не в кэше

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

Способ 1. Очистка кэша при запуске из окна выбора баз

Самый безопасный вариант. Кэш чистится только у одной базы и только у текущего пользователя Windows.

  1. Закройте все окна 1С с этой базой.
  2. Запустите 1С:Предприятие, в списке баз выделите нужную.
  3. Нажмите кнопку Изменить… справа от списка.
  4. Пролистайте мастер кнопкой Далее до последней страницы с параметрами запуска.
  5. В поле «Дополнительные параметры запуска» впишите /ClearCache.
  6. Нажмите Готово и запустите базу кнопкой 1С:Предприятие.

После успешного входа уберите /ClearCache из поля. Если оставить, кэш будет стираться при каждом запуске, и база всегда будет открываться медленно.

Параметр работает и для режима Конфигуратор. Если проблема видна в Конфигураторе (например, старое дерево метаданных), запускайте его с тем же параметром.

Альтернатива без параметров: удалить базу из списка и добавить заново с тем же путём или адресом сервера. Платформа выдаст базе новый идентификатор, и кэш начнёт копиться с нуля. Старые папки при этом останутся на диске, их можно стереть вручную (способ 3).

Способ 2. Запуск 1С с очисткой кэша из командной строки

Удобно, когда окно выбора баз недоступно, а также для ярлыков и инструкций пользователям. Исполняемые файлы лежат в каталоге версии платформы, например C:\Program Files\1cv8\8.3.xx.xxxx\bin\.

Файловая база, толстый клиент:

"C:\Program Files\1cv8\8.3.xx.xxxx\bin\1cv8.exe" ENTERPRISE /F"D:\Base\Buh" /ClearCache

Клиент-серверная база , тонкий клиент:

"C:\Program Files\1cv8\8.3.xx.xxxx\bin\1cv8c.exe" ENTERPRISE /S"srv1c\buh" /ClearCache

Конфигуратор с очисткой кэша:

"C:\Program Files\1cv8\8.3.xx.xxxx\bin\1cv8.exe" DESIGNER /S"srv1c\buh" /ClearCache

Вместо 8.3.xx.xxxx подставьте номер своей установленной версии: он виден в имени папки внутри C:\Program Files\1cv8\. Для 32-разрядной платформы путь начинается с C:\Program Files (x86)\1cv8\.

Что означают ключи:

  • ENTERPRISE / DESIGNER — режим запуска: пользовательский или Конфигуратор;
  • /F"путь" — каталог файловой базы;
  • /S"сервер\база" — адрес клиент-серверной базы;
  • /ClearCache — очистить кэш этой базы перед входом.

Сделайте отдельный ярлык «1С — с очисткой кэша» на рабочем столе пользователя. В поле «Объект» ярлыка вставьте одну из строк выше. Пользователь сам запустит его при проблеме, не дожидаясь админа.

Способ 3. Ручное удаление папок кэша 1С на диске

Этот способ чистит кэш сразу всех баз пользователя. Подходит, когда 1С не запускается вовсе или параметр /ClearCache не помог.

Перед удалением полностью закройте 1С. Проверьте в диспетчере задач, что не осталось процессов 1cv8.exe и 1cv8c.exe.

Где лежит кэш в Windows

Кэш хранится в двух каталогах профиля пользователя:

  • %APPDATA%\1C\1cv8 — обычно C:\Users\Имя\AppData\Roaming\1C\1cv8;
  • %LOCALAPPDATA%\1C\1cv8 — обычно C:\Users\Имя\AppData\Local\1C\1cv8.

Быстро открыть папку: нажмите Win+R, вставьте %APPDATA%\1C\1cv8 и нажмите Enter. Затем то же для %LOCALAPPDATA%\1C\1cv8.

Что удалять, а что оставить

Внутри вы увидите папки с длинными именами вида 3f2a8c1e-5b7d-4e2a-9c11-0a8b7e6d5f43. Каждая такая папка — кэш одной информационной базы. Их и удаляем.

ОбъектУдалять?Почему
Папки с именами-идентификаторами (GUID)✅ даЭто и есть кэш баз
%APPDATA%\1C\1CEStart\ibases.v8i❌ нетСписок баз в окне запуска
Файлы *.pfl в корне 1cv8⚠️ по ситуацииНастройки пользователя; удаление сбросит их
Папка ExtCompT⚠️ по ситуацииКэш внешних компонент; пересоздаётся, но компоненты придётся установить заново

Чтобы понять, какая папка относится к какой базе, откройте ibases.v8i блокнотом. У каждой базы там есть строка ID= с тем же идентификатором, что и у папки.

Не удаляйте целиком папку 1C в профиле. Пропадёт список баз, и пользователю придётся добавлять их заново, вспоминая пути и адреса серверов.

Кэш в Linux

В Linux клиент хранит кэш в домашнем каталоге пользователя, в скрытой папке ~/.1cv8/1C/1cv8/. Логика та же: удаляются подкаталоги с GUID-именами при закрытой программе.

Реестр Windows и кэш 1С: что там есть на самом деле

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

Реестр полезен для другого: понять, куда на самом деле указывают папки профиля. В доменной сети AppData часто перенаправлена на сетевой ресурс, и кэш лежит совсем не на диске C:.

Проверить фактический путь можно командой:

reg query "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders" /v AppData
reg query "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders" /v "Local AppData"

Если AppData указывает на сетевую папку, это частая причина медленной работы 1С: каждое обращение к кэшу идёт по сети. В таком случае стоит обсудить с администратором домена исключение папки 1C\1cv8 из перенаправления.

Правка значений в User Shell Folders меняет расположение всего профиля, не только 1С. Делайте это только через администратора домена, а не вручную на одном компьютере.

Способ 4. Скрипт для автоматической очистки кэша 1С

Когда пользователей десятки, вручную ходить по компьютерам долго. Скрипт удаляет только GUID-папки и не трогает список баз.

Bat-файл

@echo off
tasklist /FI "IMAGENAME eq 1cv8.exe" | find /I "1cv8.exe" >nul && goto busy
tasklist /FI "IMAGENAME eq 1cv8c.exe" | find /I "1cv8c.exe" >nul && goto busy

for %%P in ("%APPDATA%\1C\1cv8" "%LOCALAPPDATA%\1C\1cv8") do (
  if exist %%P (
    for /d %%D in ("%%~P\????????-????-????-????-????????????") do rd /s /q "%%D"
  )
)
echo Кэш 1С очищен.
goto end

:busy
echo Закройте все окна 1С и запустите скрипт снова.

:end
pause

Маска ????????-????-????-????-???????????? совпадает только с идентификаторами баз. Папки 1CEStart, ExtCompT и файлы настроек останутся на месте.

PowerShell

if (Get-Process 1cv8, 1cv8c -ErrorAction SilentlyContinue) {
    Write-Host "Закройте 1С и запустите скрипт снова."; exit 1
}
$guid = '^[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}$'
foreach ($root in "$env:APPDATA\1C\1cv8", "$env:LOCALAPPDATA\1C\1cv8") {
    if (Test-Path $root) {
        Get-ChildItem $root -Directory |
            Where-Object { $_.Name -match $guid } |
            Remove-Item -Recurse -Force
    }
}
Write-Host "Кэш 1С очищен."

Как запускать скрипт

  • 🖱 вручную — ярлык на рабочем столе для пользователя;
  • 🔑 при входе в Windows — сценарий входа через групповую политику: в момент входа 1С ещё не запущена;
  • ⏰ по расписанию — планировщик заданий, например раз в неделю ночью или после планового обновления конфигурации.

Скрипт работает в контексте текущего пользователя и чистит только его профиль. Для чистки у всех пользователей терминального сервера запускайте его при входе каждого, а не один раз от администратора.

Кэш на сервере 1С и в веб-клиенте

Иногда очистка на компьютере не помогает, а ошибка повторяется у всех пользователей сразу. Тогда проблема может быть в серверном кэше.

Серверный кэш

Сервер 1С:Предприятия хранит свои сеансовые данные в каталоге кластера, обычно внутри srvinfo\reg_1541\. Там лежат папки с именами, начинающимися на snccntx. Их удаление — известный приём при «зависших» ошибках на стороне сервера.

Порядок действий:

  1. Предупредите пользователей и выберите время вне рабочих часов.
  2. Остановите службу агента сервера 1С:Предприятия.
  3. Сделайте копию каталога srvinfo целиком.
  4. Удалите папки snccntx* внутри каталога кластера.
  5. Запустите службу и проверьте вход в базу.

Остановка службы обрывает сеансы всех пользователей всех баз на этом сервере. Несохранённые документы будут потеряны, фоновые и регламентные задания прервутся. Делайте это только в согласованное окно.

Не трогайте другие файлы в srvinfo (реестр кластера, списки баз). Удаление лишнего превращает пятиминутную процедуру в восстановление кластера.

Веб-клиент

Если база открывается в браузере, параметр /ClearCache не применяется. Очистите кэш браузера для адреса публикации или откройте страницу с принудительной перезагрузкой Ctrl+F5. Быстрая проверка — окно в режиме инкогнито: если там всё работает, дело в кэше браузера.

Какой способ очистки кэша выбрать

СпособКогда подходитОхватРиски
/ClearCache в списке базПроблема в одной базе, 1С запускаетсяОдна база, один пользовательМинимальные; не забыть убрать параметр
Командная строка, ярлыкНужна инструкция пользователю или ярлык «на всякий случай»Одна базаМинимальные
Ручное удаление папок1С не запускается, /ClearCache не помогВсе базы пользователяМожно по ошибке стереть список баз
Скрипт bat / PowerShellМного пользователей, терминальный серверВсе базы, массовоНужна проверка на тестовом ПК
Очистка snccntx* на сервереОшибка у всех пользователей сразуВесь серверОбрыв всех сеансов, нужно окно работ
Кэш браузераРабота через веб-клиентОдин браузерМинимальные

Идите сверху вниз: от параметра для одной базы к серверу. До серверного кэша доходит редко.

Где проявляется проблема?

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

Можно ли потерять данные при очистке кэша 1С?
Нет. Кэш — это копия метаданных и служебных файлов на компьютере пользователя. Документы, справочники и проводки хранятся в самой информационной базе и не затрагиваются.
Почему после очистки кэша 1С открывается долго?
Платформа заново загружает метаданные конфигурации. Медленным будет только первый вход, следующие пойдут с обычной скоростью.
Сбросятся ли настройки форм и отчётов?
Пользовательские настройки форм и отчётов в 8.3 обычно хранятся в базе, поэтому после /ClearCache они остаются. Сбросить их может удаление файлов *.pfl в профиле.
Как часто чистить кэш 1С профилактически?
Регулярная очистка не нужна. Достаточно чистить после обновления конфигурации или платформы, если появились странности, и после аварийного завершения работы.
Помогает ли очистка кэша от ошибки «Ошибка формата потока»?
Чаще всего да, если ошибка появилась у одного пользователя. Если она возникает у всех и в любой базе, проверяйте серверный кэш и целостность самой базы.