| 
    
        
     
     | 
    
  | 
Выгнать пользователя если он уснул | ☑ | ||
|---|---|---|---|---|
| 
    0
    
        r1000    
     23.11.16 
            ✎
    15:47 
 | 
         
        Старая задача. Есть какие то варианты, выкидывать пользователя, если он не работает в 1С более определенного времени, типа не двигает мышью по окну 1С ? Т.е. по принципу стандартной блокировки экрана в виндовс. платформа 8.3
 
        Может быть что то появилось ?  | 
|||
| 
    1
    
        Fragster    
     гуру 
    23.11.16 
            ✎
    16:02 
 | 
         
        не, нету такого     
         | 
|||
| 
    2
    
        oslokot    
     23.11.16 
            ✎
    16:17 
 | 
         
        фоновое задание парсит ЖР на предмет активности пользователей и рубит их сеансы     
         | 
|||
| 
    3
    
        probably    
     23.11.16 
            ✎
    16:29 
 | 
         
        Сформировали большой отчет, открыли кучу окон и настроили их отображение "под себя"; ушли на совещание/длительный звонок от крупного заказчика (и пр.)
 
        И тут некто решает, что я не работаю в 1с и надо её закрыть. Зачем?  | 
|||
| 
    4
    
        Мимохожий Однако    
     23.11.16 
            ✎
    16:31 
 | 
         
        ОФФ: Открыли ветку и "уснул" ))     
         | 
|||
| 
    5
    
        f_vadim    
     23.11.16 
            ✎
    16:35 
 | 
         
        у нас есть главбух, которая сразу предупредила, что не смотря ни на какую активность, если сеанс есть, значит он нужен и срубать его низзя.     
         | 
|||
| 
    6
    
        HardBall    
     23.11.16 
            ✎
    16:41 
 | 
         
        (0) Какова цель?     
         | 
|||
| 
    7
    
        newbling    
     23.11.16 
            ✎
    17:02 
 | 
         
        Есть же параметр убиения спящих сеансов через X секунд в настройках конфигуратора     
         | 
|||
| 
    8
    
        Klesk666    
     23.11.16 
            ✎
    17:06 
 | 
         
        а по мне надо приучать вырубать программу в нерабочее время, , в 99% просто лень закрыть было, а в рабочее конечно делать такого не стоит     
         | 
|||
| 
    9
    
        Fish    
     гуру 
    23.11.16 
            ✎
    17:09 
 | 
         
        (8) А если бухи запустили какую-нибудь длительную обработку?     
         | 
|||
| 
    10
    
        oslokot    
     23.11.16 
            ✎
    17:33 
 | 
         
        (7) В параметрах ИВ выставил время завершения спящего сеанса 120 секунд, жду уже 10 минут и клаву не трогаю. Не отрубается сеанс.
 
        Файловая нетленка 8.3.8  | 
|||
| 
    11
    
        Мимохожий Однако    
     23.11.16 
            ✎
    17:35 
 | 
         
        (10) Файловая?     
         | 
|||
| 
    12
    
        oslokot    
     23.11.16 
            ✎
    17:36 
 | 
         
        (11) ога     
         | 
|||
| 
    13
    
        Klesk666    
     23.11.16 
            ✎
    17:38 
 | 
         
        (9) пусть предупредят, пусть знают что там через 30 минут отрубиться, проще сначала все запретить и разрешать помаленьку, чем наоборот     
         | 
|||
| 
    14
    
        oslokot    
     23.11.16 
            ✎
    17:42 
 | 
         
        (11) файловая в пролёте?     
         | 
|||
| 
    15
    
        LeReve    
     23.11.16 
            ✎
    17:50 
 | 
         
        а потом будет выгнать умника который выгнал главбуха без предупреждения....     
         | 
|||
| 
    16
    
        dred999    
     23.11.16 
            ✎
    17:53 
 | 
         
        (7) А где это в конфигураторе настраивается?     
         | 
|||
| 
    17
    
        dred999    
     23.11.16 
            ✎
    17:55 
 | 
         
        (7) Нашел -Время завершения спящего сеанса     
         | 
|||
| 
    18
    
        mistеr    
     23.11.16 
            ✎
    18:16 
 | 
         
        (6) Очевидно экономия лицензий.     
         | 
|||
| 
    19
    
        Diman_Kr    
     23.11.16 
            ✎
    18:23 
 | 
         
        (17) Где нашел? тоже актуально.     
         | 
|||
| 
    20
    
        Мимохожий Однако    
     23.11.16 
            ✎
    18:25 
 | 
         
        (14) да     
         | 
|||
| 
    21
    
        Diman_Kr    
     23.11.16 
            ✎
    18:28 
 | 
         
        (19) А, тоже нашел. Работает хоть в клиент серверной? по умолчанию стоит 86 400 сек, т.е 24 часа, а сеансы висят по несколько суток.     
         | 
|||
| 
    22
    
        Glenas    
     23.11.16 
            ✎
    18:50 
 | 
         
        (6) Экономия электроэнергии видимо :)     
         | 
|||
| 
    23
    
        EvgeniuXP    
     23.11.16 
            ✎
    18:55 
 | 
         
        (5) у нас ночью таких куча сеансов сидят - рубить низя :)))     
         | 
|||
| 
    24
    
        Fragster    
     гуру 
    24.11.16 
            ✎
    11:09 
 | 
         
        (18) "спящие" сеансы не жрут лицензии     
         | 
|||
| 
    25
    
        Fragster    
     гуру 
    24.11.16 
            ✎
    11:10 
 | 
         
        те, которые в консоли кластера видны как спящие     
         | 
|||
| 
    26
    
        Jonny_Khomich    
     24.11.16 
            ✎
    11:14 
 | 
         
        (2) пользователь сидит, анализирует полученную информацию(отчет формировался 1 час), бац и выкинули. обидно будет.     
         | 
|||
| 
    27
    
        yurybx    
     24.11.16 
            ✎
    11:59 
 | 
         
        Ниже привожу powershell-скрипт, который, в случае простоя пользователя более часа, выключает компьютер. Скрипт можно изменить, чтобы вместо выключения компьютера он завершал работу пользовательского экземляра 1С. Тогда остается лишь добавить его в планировщик с повторениями через нужные промежутки времени (например, каждые 10 минут). Содержимое скопировать в файл с расширением ps1.
 
        Add-Type @' using System; using System.Diagnostics; using System.Runtime.InteropServices; namespace PInvoke.Win32 { public static class UserInput { [DllImport("user32.dll", SetLastError=false)] private static extern bool GetLastInputInfo(ref LASTINPUTINFO plii); [StructLayout(LayoutKind.Sequential)] private struct LASTINPUTINFO { public uint cbSize; public int dwTime; } public static DateTime LastInput { get { DateTime bootTime = DateTime.UtcNow.AddMilliseconds(-Environment.TickCount); DateTime lastInput = bootTime.AddMilliseconds(LastInputTicks); return lastInput; } } public static TimeSpan IdleTime { get { return DateTime.UtcNow.Subtract(LastInput); } } public static int LastInputTicks { get { LASTINPUTINFO lii = new LASTINPUTINFO(); lii.cbSize = (uint)Marshal.SizeOf(typeof(LASTINPUTINFO)); GetLastInputInfo(ref lii); return lii.dwTime; } } } } '@ if ([PInvoke.Win32.UserInput]::IdleTime.minutes -ge 60) { Stop-Computer -force }  | 
|||
| 
    28
    
        EvgeniuXP    
     04.12.16 
            ✎
    22:45 
 | 
         
        > Сформировали большой отчет, открыли кучу окон и настроили их отображение "под себя"
 
        сохранил окна, закрыл 1С, открыл 1С, восстановил окна. Нет проблем.  | 
|||
| 
    29
    
        vde69    
     04.12.16 
            ✎
    22:54 
 | 
         
        (24) ты будешь удивлен.... жрут гады, в течении 3х суток...
 
        кроме того если после просыпания сервер решит этому сеансу отдать новый рхост - то будет жрать 2 лицензии, и так далее... разумеется если лицензии выдаются сервером а не клиентом у меня 70 лицензий как-то не хватило 10 реально активным юзерам :)  | 
|||
| 
    30
    
        TormozIT    
     гуру 
    05.12.16 
            ✎
    00:41 
 | 
         
        Спящего пользователя вебкамера и спец. софт, распознающий образы спящих людей, может выявить. Софт сгенерирует событие, а в 1с его обработать. =)     
         | 
|||
| 
    31
    
        TormozIT    
     гуру 
    05.12.16 
            ✎
    00:42 
 | 
         
        (29) Это на какой версии платформы спящие не отпускают лицензии 3 суток? Похоже на нештатное поведение платформы.     
         | 
|||
| 
    32
    
        Лефмихалыч    
     05.12.16 
            ✎
    07:26 
 | 
         
        var objWMIService = GetObject("winmgmts:\\.\root\CIMV2");
 
        var colItems = objWMIService.ExecQuery("SELECT * FROM Win32_Desktop", "WQL", wbemFlagReturnImmediately | wbemFlagForwardOnly); var enumItems = new Enumerator(colItems); for (; !enumItems.atEnd(); enumItems.moveNext()) { var objItem = enumItems.item(); if(objItem.ScreenSaverActive) // вот тут можно что-то делать  | 
|||
| 
    33
    
        Tarlich    
     05.12.16 
            ✎
    11:13 
 | 
||||
| 
    34
    
        Tarlich    
     05.12.16 
            ✎
    11:18 
 | 
||||
| 
    35
    
        vde69    
     05.12.16 
            ✎
    11:54 
 | 
         
        (31) к сожалению это штатное поведение 1с... расписано в администрировании ключей...
 
        просто раньше это проявлялось не так заметно (на то были причины)... очень хочу перевести юзеров на получение ключей клиентом, но при запуске с сетевой папки 1с не видит файла настроек хаспа, а мапить диск не хочу, сейчас вроде все хорошо кроме ключей....  | 
|||
| 
    36
    
        TormozIT    
     гуру 
    11.12.16 
            ✎
    15:57 
 | 
         
        (35) Дай ссылку на документацию или приведи выдержку из нее.     
         | 
|||
| 
    37
    
        EvgeniuXP    
     11.12.16 
            ✎
    19:44 
 | 
         
        (2) е если пользователь нажал кнопку чтоб выбрать файл и затем уснул? :)     
         | 
|||
| 
    38
    
        timurhv    
     11.12.16 
            ✎
    22:10 
 | 
         
        (29), (35) Т.е. это так себя ведет аппаратный ключ? С программными не замечал такого поведения.     
         | 
|||
| 
    39
    
        Vladal    
     12.12.16 
            ✎
    00:24 
 | 
         
        (27) Просто проверять текущее время - если больше 18 часов, то от 18 часов отсчитывать время простоя и вырубать сеанс.
 
        За скрипт спасибо. Интересно.  | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |