На сервере работает масса людей и частенько, некоторые из них, забывают закрыть перед уходом домой программу 1С. Автоматизация, которая исполняется ночью, требует монопольного доступа к базе данных 1С, а соответственно натыкается на проблему. Данная проблема решена при помощи …VBS скрипта:
On Error Resume Next Set objService = GetObject("winmgmts:{impersonationLevel=impersonate,(debug)}!\\.\root\CIMV2") If Err.Number <> 0 Then WScript.Echo Err.Number & ": " & Err.Description WScript.Quit End If For Each objProc In objService.ExecQuery("SELECT * FROM Win32_Process WHERE Name = '1CV7s.exe'") objProc.Terminate Next
Вот и все, сохраняем файлик с именем 1c-terminate.vbs, помещаем в авто-запуск, к примеру в 01.00 и скрипт выгрузит все незакрытые окна…
Данным скриптом в принципе можно решить любую подобную ситуацию, не обязательно с 1С, для этого достаточно изменить имя процесса который требуется «убить».