Автоматическое закрытие сеансов пользователей с помощью VBS.

1. KoalaJustKoala 08.02.21 11:48 Сейчас в теме
Доброго времени суток!
Столкнулся тут с такой проблемой, нашел скрипт, оптимизировал его под свой кластер, но все равно выдает ошибку, мол библиотеки такой нет.
Option Explicit

Dim UserName
Dim UserPass
Dim ServerName
Dim BaseName
'имя пользователя базы 1С:Предприятия
UserName = "******"
'пароль пользователя базы 1С:Предприятия
UserPass = "*****"
'имя кластера 1С:Предприятия
ServerName = "127.0.0.1"
'имя базы 1С:Предприятия к которой подключаемся
BaseName = "TestTMC"

Dim Connector
Dim AgentConnection
Dim Cluster
Dim Clusters
Dim WorkingProcess
Dim WorkingProcesses
Dim WorkingProcessConnection
Dim ibDesc
Dim Connections
Dim Connection
Dim ConnectString
Dim IBB
Dim IBBl
Dim Sessions
Dim ISe
Dim SessionsActiv

Set Connector = CreateObject("V83.COMConnector") ' указать в зависимости от вашей версии платформы V8, V81, V82, V83
MsgBox ("Начало")
Set AgentConnection = Connector.ConnectAgent(ServerName)
Clusters = AgentConnection.GetClusters()
Dim Q,W,I

For Q = LBound(Clusters) to UBound(Clusters)
	
	Set Cluster = Clusters(Q)
	
	'Указываем доступ к консоли 1С:Предприятия (только в том случае если определён администратор кластера, иначе прописать просто " " (пробелы))
	AgentConnection.Authenticate Cluster, "UserName", "UserPass"
	WorkingProcesses = AgentConnection.GetWorkingProcesses(Cluster)
	IBB = AgentConnection.GetInfoBases(Cluster)
	
	For I = LBound(IBB) To UBound(IBB)
		Set IBBl = IBB(I)
		Sessions = AgentConnection.GetInfoBaseSessions (Cluster,IBBl)
			
		For ISe = LBound(Sessions) To UBound(Sessions)
		Set SessionsActiv = Sessions(ISe)
			
		If (SessionsActiv.AppID <> "COMConsole") then
			AgentConnection.TerminateSession Cluster,SessionsActiv
			MsgBox ("Отключаем_Сесию")
		End if

	Next
Next

' Отключение соединение (если потребуеться а пока оставлю здесь)

' For W = LBound(WorkingProcesses) to UBound(WorkingProcesses)
' 	Set WorkingProcess = WorkingProcesses(W)
' 	ConnectString = WorkingProcess.HostName & ":" & WorkingProcess.MainPort
' 	Set WorkingProcessConnection = Connector.ConnectWorkingProcess(ConnectString)
' 	WorkingProcessConnection.AddAuthentication UserName, UserPass
' 	Set ibDesc = WorkingProcessConnection.CreateInfoBaseInfo()
' 	ibDesc.Name = BaseName
' 	Connections = WorkingProcessConnection.GetInfoBaseConnections(ibDesc)
' 	For I = LBound(Connections) To UBound(Connections)
' 		Set Connection = Connections(I)
' 		If (Connection.AppID <> "COMConsole") then
' 			WorkingProcessConnection.Disconnect Connection
' 			MsgBox ("Отключаем_Соединение")
' 		End if
' 	Next
' Next
Next
MsgBox ("Конец")
Показать

Ошибку выдает на 35 строке 1м символе, мол библиотеки такой нет!
Представляю 35 строку:
Set AgentConnection = Connector.ConnectAgent(ServerName)

Может кто сталкивался?
Как лечить такое?
Найденные решения
2. SanyMaga 68 08.02.21 11:54 Сейчас в теме
попробуйте зарегистрировать библиотеку ComConnector comcntr.dll из каталога программы.

В 32-битной версии сервера проблема решилась бы командой
regsvr32 «C:\Program Files (x86)\1cv8\8.3.5.1119\bin\comcntr.dll»


в 64-битной версии команда будет примерно такой * :
C:\Windows\SysWOW64\regsvr32 «C:\Program Files (x86)\1cv8\8.3.5.1119\bin\comcntr.dll»


* если команда регистрации не помогла, то нужно предварительно удалить регистрацию библиотеки comcntr.dll, запустив ту же команду вызова regsvr32 с ключом /u

** если и это не помогло, попробуйте переустановить платформу 1С в режиме Исправить, а затем зарегистрируйте библиотеку, как написано выше "
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. SanyMaga 68 08.02.21 11:54 Сейчас в теме
попробуйте зарегистрировать библиотеку ComConnector comcntr.dll из каталога программы.

В 32-битной версии сервера проблема решилась бы командой
regsvr32 «C:\Program Files (x86)\1cv8\8.3.5.1119\bin\comcntr.dll»


в 64-битной версии команда будет примерно такой * :
C:\Windows\SysWOW64\regsvr32 «C:\Program Files (x86)\1cv8\8.3.5.1119\bin\comcntr.dll»


* если команда регистрации не помогла, то нужно предварительно удалить регистрацию библиотеки comcntr.dll, запустив ту же команду вызова regsvr32 с ключом /u

** если и это не помогло, попробуйте переустановить платформу 1С в режиме Исправить, а затем зарегистрируйте библиотеку, как написано выше "
3. KoalaJustKoala 08.02.21 12:07 Сейчас в теме
(2) Благодарю!
Сейчас подойдет сис. админ попробуем!
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот