Скрипт запуска 1С 8 с принудительным обновлением кэша конфигурации 8.0-8.3 (замена 1cestart.exe)

17.07.15

Разработка - Инструментарий разработчика

Скрипт служит для борьбы с глюками 8-ой версии после динамического обновления. Данный скрипт очищает локальный кэш 1С при каждом запуске платформы. Для использования необходимо положить его в папку "%appdata%\1C\1CEStart\" и у ярлыка на рабочем столе пользователей изменить расширение файла с ".exe" на ".js". Скрипт работает на всех версиях Windows включая Windows 7 (x64), Server 2008 (R2), Server 2012 (R2).

Скрипт служит для борьбы с глюками 8-ой версии после динамического обновления. Данный скрипт очищает локальный кэш 1С при каждом запуске платформы. Для использования необходимо положить его в папку "%appdata%\1C\1CEStart\" и у ярлыка на рабочем столе пользователей изменить расширение файла с ".exe" на ".js". Скрипт работает на всех версиях Windows включая Windows 7 и Server 2008.

Для использования необходимо создать текстовый файл, скопировать в него текст скрипта и изменить его расширение с *.txt на *.js.

 

Текст скрипта (1cestart.js):

 

var FSO = new ActiveXObject("Scripting.FileSystemObject");
var WshShell = new ActiveXObject("WScript.Shell");
var colEnvVars = WshShell.Environment("Process");

var sErrors = false;

var WshSysEnv = WshShell.Environment;
var WshUserEnv = WshShell.Environment("USER");

//Устанавливаем переменную окружения для того, чтобы Windows не спрашивала
//про сертификат безопасности, если скрипт будет запускаться из сетевой папки
//------------------------------------------------------------------
WshUserEnv("SEE_MASK_NOZONECHECKS") = 1;
//------------------------------------------------------------------

//Очищаем кэш
//------------------------------------------------------------------

var FolderName1 = "\\AppData\\Local\\1C\\1Cv8";
var FolderName2 = "\\AppData\\Roaming\\1C\\1Cv8";
var FolderName3 = "\\AppData\\Local\\1C\\1Cv80";
var FolderName4 = "\\AppData\\Roaming\\1C\\1Cv80";
var FolderName5 = "\\AppData\\Local\\1C\\1Cv81";
var FolderName6 = "\\AppData\\Roaming\\1C\\1Cv81";
var FolderName7 = "\\AppData\\Local\\1C\\1Cv82";
var FolderName8 = "\\AppData\\Roaming\\1C\\1Cv82";

if (FSO.FolderExists(colEnvVars("userprofile") + FolderName1))
GoSubFolders(colEnvVars("userprofile") + FolderName1);
if (FSO.FolderExists(colEnvVars("userprofile") + FolderName2))
GoSubFolders(colEnvVars("userprofile") + FolderName2);
if (FSO.FolderExists(colEnvVars("userprofile") + FolderName3))
GoSubFolders(colEnvVars("userprofile") + FolderName3);
if (FSO.FolderExists(colEnvVars("userprofile") + FolderName4))
GoSubFolders(colEnvVars("userprofile") + FolderName4);
if (FSO.FolderExists(colEnvVars("userprofile") + FolderName5))
GoSubFolders(colEnvVars("userprofile") + FolderName5);
if (FSO.FolderExists(colEnvVars("userprofile") + FolderName6))
GoSubFolders(colEnvVars("userprofile") + FolderName6);
if (FSO.FolderExists(colEnvVars("userprofile") + FolderName7))
GoSubFolders(colEnvVars("userprofile") + FolderName7);
if (FSO.FolderExists(colEnvVars("userprofile") + FolderName8))
GoSubFolders(colEnvVars("userprofile") + FolderName8);

//if (!sErrors)
// WScript.Echo("Обновление кэша прошло успешно");
//else
// WScript.Echo("Возникли ошибки. Возможно есть запущенные процессы 1С");

function DelFile(sFILE)
{
try
{
FSO.DeleteFile(sFILE, True);
}
catch(e)
{
sErrors = true;
}
}

function GetFolder(sFOLDER)
{
try
{
return FSO.GetFolder(sFOLDER);
}
catch(e)
{
sErrors = true;
}
}

function GoSubFolders(objDIR)
{
ProcessFilesInFolder(objDIR);
var sFolder = GetFolder(objDIR);
var subFlds = new Enumerator(sFolder.SubFolders);
for (; !subFlds.atEnd(); subFlds.moveNext())
{
GoSubFolders(subFlds.item());
}
try
{
FSO.DeleteFolder(sFolder, true);
}
catch(e)
{
sErrors = true;
}
}

function ProcessFilesInFolder(objDIR)
{
var sFolder = GetFolder(objDIR);
var subFiles = new Enumerator(sFolder.Files);
for (; !subFiles.atEnd(); subFiles.moveNext())
{
DelFile(subFiles.item());
}
}
//------------------------------------------------------------------

//Запускаем 1С
//------------------------------------------------------------------
WshShell.Run("1cestart.exe");

 

 

 

Вступайте в нашу телеграмм-группу Инфостарт

См. также

Инструментарий разработчика Роли и права Запросы СКД Программист Руководитель проекта 1С v8.3 Управляемые формы Запросы Система компоновки данных Платные (руб)

Инструменты для разработчиков 1С 8.3: Infostart Toolkit. Автоматизация и ускорение разработки на управляемых формах. Легкость работы с 1С.

15500 руб.

02.09.2020    217869    1193    413    

1054

Инструментарий разработчика Чистка данных Свертка базы Инструменты администратора БД Системный администратор Программист Руководитель проекта 1С v8.3 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 Россия Платные (руб)

Инструмент представляет собой обработку для проведения свёртки или обрезки баз данных. Работает на ЛЮБЫХ конфигурациях (УТ, БП, ERP, УНФ, КА и т.д.). Поддерживаются серверные и файловые базы, управляемые и обычные формы. Может выполнять свертку одновременно в несколько потоков. А так же автоматически, без непосредственного участия пользователя. Решение в Реестре отечественного ПО

14400 руб.

20.08.2024    43508    236    123    

220

Пакетная печать Печатные формы Инструментарий разработчика Программист 1С v8.3 Запросы 1С:Зарплата и кадры бюджетного учреждения 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Библиотека стандартных подсистем Платные (руб)

Расширение для создания и редактирования печатных форм в системе 1С:Предприятие 8.3. Благодаря конструктору можно значительно снизить затраты времени на разработку печатных форм, повысить качество и прозрачность разработки, а также навести порядок в многообразии корпоративных печатных форм.

22200 руб.

06.10.2023    27619    73    30    

101

Инструментарий разработчика Программист 1С v8.3 Платные (руб)

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

9500 руб.

17.05.2024    39267    142    57    

179

Инструменты администратора БД Инструментарий разработчика Роли и права Программист 1С v8.3 1C:Бухгалтерия Россия Платные (руб)

Расширение позволяет без изменения кода конфигурации выполнять проверки при вводе данных, скрывать от пользователя недоступные ему данные, выполнять код в обработчиках. Не изменяет данные конфигурации, легко устанавливается практически на любую конфигурацию на управляемых формах.

16000 руб.

10.11.2023    19538    76    39    

92

Инструментарий разработчика Нейросети Платные (руб)

Первые попытки разработки на 1С с использованием больших языковых моделей (LLM) могут разочаровать. LLMки сильно галлюцинируют, потому что не знают устройства конфигураций 1С, не знают нюансов синтаксиса. Но если дать им подсказки с помощью MCP, то результат получается кардинально лучше. Далее в публикации: MCP для поиска по метаданым 1С, справке синтакс-помошника и проверки синтаксиса.

9900 руб.

25.08.2025    9410    15    7    

23

Инструментарий разработчика WEB-интеграция 1С v8.3 1C v8.2 1C:Бухгалтерия 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Зарплата и Управление Персоналом 3.x Платные (руб)

Инструмент для генерации OpenApi (Swagger) спецификаций на основании файлов конфигураций 1С. Это консольное и десктопное приложение на языке Rust с полноценным редактором кода, содержащим автозамену и подсвечивание ошибок для быстрого и безошибочного написания документирующего комментария.

18000 руб.

22.11.2024    2578    2    0    

8
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. bulpi 217 27.02.13 17:25 Сейчас в теме
1)Если положить в папку "%appdata%\1C\1CEStart\ , то скрипт выдает ошибку, что естественно , т.к. там нет файла 1CEStart.exe
2)Если положить в папку c:\Program Files\1cv82\common , то скрипт ошибки не выдает, но и не удаляет ни фига.

Так что идея хорошая, а вот реализация...
Но даже если бы все работало. Нужно чистить не весь кеш! Там полезные настройки пользователя по расположению окон и т.д. Нужно удалять подкаталоги вида Local Settings\Application Data\1C\1Cv82\34ff5021-755e-42cc-82ce-850d795866a8\Config и ConfigSave
2. tuman777 41 17.07.15 13:27 Сейчас в теме
Текст скрипта обновлен. Были неверные пути к профилю 1С. Добавил путь к кэшу 8.3. Часто нужно чистить в том числе и пользовательские настройки. Например недавно пользователю заблокировали доступ на уровне записей к одной из ранее доступных организаций, а в параметрах одного отчета у него эта организация была сохранена и отчет перестал открываться
Для отправки сообщения требуется регистрация/авторизация