|   |   | 
| 
 | выгонялка на vbscript | ☑ | ||
|---|---|---|---|---|
| 0
    
        n0ther 29.06.15✎ 11:34 | 
        Пишу выгонялку на vbscript и столкнулся со следующей проблемой. 
 В таком варианте скрипта, не закрываются тонкие клиенты: Set Connector = CreateObject("V83.COMConnector") Set Agent = Connector.ConnectAgent(NameAgent) Set Cluster = Agent.GetClusters()(0) Agent.Authenticate Cluster, ClusterAdmin, ClusterPass For Each WorkProcess In Agent.GetWorkingProcesses(Cluster) ConnectString = WorkProcess.HostName & ":" & WorkProcess.MainPort Set WorkProcessConnection = Connector.ConnectWorkingProcess(ConnectString) WorkProcessConnection.AddAuthentication BaseAdmin, BasePass BaseList = WorkProcessConnection.GetInfoBases() For i = LBound(BaseList) To UBound(BaseList) If LCase(BaseList(i).Name) = LCase(BaseName) Then Set Base = BaseList(i) ' соединения Connections = WorkProcessConnection.GetInfoBaseConnections(Base) For j = LBound(Connections) To UBound(Connections) Set CurrentConnection = Connections(j) If LCase(CurrentConnection.AppID) <> "comconsole" Then WorkProcessConnection.Disconnect CurrentConnection End If Next End If Next Next | |||
| 1
    
        n0ther 29.06.15✎ 11:34 | 
        А в этом варианте выдает ошибку: Ошибка выполнения Microsoft VBScript: Несоответствие типа: 'Agent.GetInfoBaseSessions' 
 Set Connector = CreateObject("V83.COMConnector") Set Agent = Connector.ConnectAgent(NameAgent) Set Cluster = Agent.GetClusters()(0) Agent.Authenticate Cluster, ClusterAdmin, ClusterPass For Each WorkProcess In Agent.GetWorkingProcesses(Cluster) ConnectString = WorkProcess.HostName & ":" & WorkProcess.MainPort Set WorkProcessConnection = Connector.ConnectWorkingProcess(ConnectString) WorkProcessConnection.AddAuthentication BaseAdmin, BasePass BaseList = WorkProcessConnection.GetInfoBases() For i = LBound(BaseList) To UBound(BaseList) If LCase(BaseList(i).Name) = LCase(BaseName) Then Set Base = BaseList(i) ' сессии Sessions = Agent.GetInfoBaseSessions(Cluster, Base) For k = LBound(Sessions) To UBound(Sessions) Set ThisSession = Sessions(k) If LCase(ThisSession.AppID) <> "comconsole" Then Agent.TerminateSession Cluster, ThisSession End If Next End If Next Next | |||
| 2
    
        Господин ПЖ 29.06.15✎ 11:36 | 
        >В таком варианте скрипта, не закрываются тонкие клиенты: 
 они просто обратно лезут | |||
| 3
    
        vhl 29.06.15✎ 11:36 | 
        (1) очень интересно. Продолжайте наблюдения.     | |||
| 4
    
        Бубка Гоп 29.06.15✎ 11:38 | 
        (0) стесняюсь спросить, чем штатная выгонялка не устроила?     | |||
| 5
    
        n0ther 29.06.15✎ 11:39 | 
        (4) а вот с этого места поподробнее     | |||
| 6
    
        n0ther 29.06.15✎ 11:55 | 
        (2) это подло с их стороны. я так понимаю, третьего варианта не дано. что же эта падла через sessions не работает :-E     | |||
| 7
    
        n0ther 29.06.15✎ 12:23 | 
        (2) невнимательность!
 во втором варианте, рабочий процесс не нужен совсем, а список баз получаем через агента. И вышибает всех! | |||
| 8
    
        Garykom гуру 29.06.15✎ 12:32 | 
        собственно а чем штатная выгонялка не подошла? особенно если серверная 1с...     | |||
| 9
    
        n0ther 29.06.15✎ 15:23 | 
        (8) да что за штатная выгонялка и где о ней почитать?     | |||
| 10
    
        Одинесю 29.06.15✎ 15:24 | 
        (9) Конфу скажи. В УПП Сервис - Блокировка соединений с информационной базой.     | |||
| 11
    
        Azverin 29.06.15✎ 15:25 | 
        (9) Обработка "Активные пользователи" УФ - можешь из УПП или КА дёрнуть     | |||
| 12
    
        n0ther 29.06.15✎ 15:28 | 
        (10) БП 3.0 КОРП. А из командной строки она стартанёт?     | |||
| 13
    
        n0ther 29.06.15✎ 15:33 | 
        Нашел, оказывается это функционал БСП. Интересно, но не подходит, так как не завершает принудительно сеансы конфигуратора.     | |||
| 14
    
        Azverin 29.06.15✎ 15:34 | 
        (13) Конфигуратор - проходной двор?     | |||
| 15
    
        Web00001 29.06.15✎ 15:36 | 
        (13)Конфигуратор у тебя в тонком клиенте работает каким то образом? Выгоняй всех штатной, а если кто то остался уже своим вариантом допинывай.     | |||
| 16
    
        Jokero 29.06.15✎ 15:39 | 
        (8) Зачем штатная выгонялка на серверной 1с? В администрировании делитим все сеансы и смеемся как злодей! Любителей пофигуратора там тоже можно выгнать.     | |||
| 17
    
        Stim 29.06.15✎ 15:43 | 
        (16) у меня не получалось скриптом убивать все сеансы. причем - до какой-то платформы работало, после - сеансы стали суперживучи и неубиваемы.
 пришлось скриптом запускать штатную выгонялку и в цикле проверять количество соединений | |||
| 18
    
        Одинесю 29.06.15✎ 15:44 | 
        (16) Можно проще - перезапустить службу )     | |||
| 19
    
        n0ther 29.06.15✎ 15:55 | 
        (18) во! отличный, простой и действенный способ.     | |||
| 20
    
        Одинесю 29.06.15✎ 16:01 | 
        (19) Телефон надо?     | |||
| 21
    
        Stim 29.06.15✎ 16:10 | 
        (19) нихрена подобного. сеансы живучи     | |||
| 22
    
        Одинесю 29.06.15✎ 16:18 | 
        (21) Для тонкого ага v8: v8: Тонкий клиент, время отключения сеанса.     | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |