{{description>Скрипт завершения всех сеансов пользователей на сервере 1С}}
====== Скрипт завершения всех сеансов пользователей на сервере 1с ======
[[ http://wiki.mihanik.net/doku.php?id=программирование_и_scripting:vbscript:скрипт_завершения_всех_сеансов_пользователей_на_сервере_1с&do=export_pdf | Экспорт в PDF ]] ~~ODT~~
Дата создания: 2024/07/03 06:14 (C) mihanik
===== Дано =====
Сервер 1С
===== Надо =====
"Выгнать" всех пользователей из всех баз 1С
===== Решение =====
Выполняется всё несложным скриптом на VBS
Для запуска скрипта лучше использовать [[программирование_и_scripting:vbscript:сервер_сценариев_vbscript|сервер сценариев CScript]]
**Важно !**\\ Скрипт будет работать только если в системе зарегистрирована comcntr.dll (COMConnector) соответствующей платформы 1С!!!
Option Explicit
Dim ServerName ' имя кластера 1С:Предприятия
ServerName = "srv-1c"
Dim ClusterAdmin ' Имя админа кластера, если есть
ClusterAdmin = ""
Dim ClusterAdminPassword ' Пароль админа кластера, если есть.
ClusterAdminPassword = ""
Dim Connector
Dim AgentConnection
Dim Cluster
Dim Clusters
Dim WorkingProcesses
Dim IBB
Dim IBBl
Dim Sessions
Dim SessionsActiv
Dim MyBaseName
Set Connector = CreateObject("V83.COMConnector")
Set AgentConnection = Connector.ConnectAgent(ServerName)
Clusters = AgentConnection.GetClusters()
For Each Cluster In Clusters
AgentConnection.Authenticate Cluster, ClusterAdmin,ClusterAdminPassword
WorkingProcesses = AgentConnection.GetWorkingProcesses(Cluster)
IBB = AgentConnection.GetInfoBases(Cluster)
For Each IBBl In IBB
Sessions = AgentConnection.GetInfoBaseSessions (Cluster,IBBl)
For Each SessionsActiv In Sessions
If (SessionsActiv.AppID <> "COMConsole") Then
MyBaseName = IBBl.Name
if SessionsActiv.AppID="WebClient" or SessionsActiv.AppID="1CV8C" or SessionsActiv.AppID="1CV8" Then
wscript.Echo "Отключаем: " & SessionsActiv.userName & " от " & MyBaseName
AgentConnection.TerminateSession Cluster,SessionsActiv
End If
End if
Next
Next
Next
Set AgentConnection = nothing
Set Connector = nothing
Файл со скриптом: {{ :программирование_и_scripting:vbscript:kickoutallusers.vbs |}}
Завершаются сеансы следующих типов:
* 1CV8 - Толстый клиент
* 1CV8C - Тонкий клиент
* WebClient - Веб-клиент
Не завершаются следующие сеансы
* Designer - Конфигуратор
* COMConnection - COM-соединение
* WSConnection - Сессия веб-сервиса
* BackgroundJob - Фоновое задание
* SystemBackgroundJob - Системное фоновое задание
* SrvrConsole - Консоль кластера
* COMConsole - COM-консоль кластера
* JobScheduler - Планировщик
* Debugger - Отладчик
* RAS - Сервер администрирования
===== Источники =====
* https://its.1c.ru/
* https://www.vbsedit.com/
[[#top|⇑ Наверх ⇑]]