powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Windows [игнор отключен] [закрыт для гостей] / Скрипт для выявления "висящих" подключений
6 сообщений из 6, страница 1 из 1
Скрипт для выявления "висящих" подключений
    #34272356
Оффтопик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всем привет.

Можно ли написать такой скрипт, который бы выявлял по некоторым критериям (например время простоя) терминальных пользователей, которых надо погасить и гасил бы их ?

Если такая возможность существует, то подскажите, куда копать, где посмотреть примеры ?
...
Рейтинг: 0 / 0
Скрипт для выявления "висящих" подключений
    #34272436
Фотография rrrrrrrrrr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пуск-Выполнить-gpedit.msc и вроде там для терминального сервера можно выставить таймауты отключения
...
Рейтинг: 0 / 0
Скрипт для выявления "висящих" подключений
    #34273027
Оффтопик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rrrrrrrrrrПуск-Выполнить-gpedit.msc и вроде там для терминального сервера можно выставить таймауты отключенияне нашел

может, это в 2003-м появилось ? у меня 2000 сервер.
...
Рейтинг: 0 / 0
Скрипт для выявления "висящих" подключений
    #34273069
Фотография rrrrrrrrrr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Помнится, Vw жаловался, что все равно не отрабатывает и руками закрывать приходится. Сам не проверял, не знаю.
Частично может решить проблему программа в автозагрузке пользователя:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
 function  LastInput: DWord;
 var  
  LInput: TLastInputInfo; 
 begin 
   try 
    LInput.cbSize := SizeOf(TLastInputInfo);
    GetLastInputInfo(LInput);
    Result := GetTickCount - LInput.dwTime;
   except 
    Result :=  0 ;
   end ;
 end ;
...
     try 
       if  LastInput> 900000   then 
         begin 
          ExitWindowsEx(
         end 
       else 
         begin 
          ;
         end ;
     except 
      ;
     end ;
есть две проблемы:
1) надо вешать каждому юзеру, а это лишняя оперативка :(
2) процесс принадлежит пользователю и он может его выгрузить. Но если спрятать от диспетчера задач - прокатит.
Чисто теоретически можно выйти на API терминального сервера и оттуда копать - но тут я не смотрел, не заню.
...
Рейтинг: 0 / 0
Скрипт для выявления "висящих" подключений
    #34273086
Оффтопик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rrrrrrrrrrПомнится, Vw жаловался, что все равно не отрабатывает и руками закрывать приходится. Сам не проверял, не знаю.
Частично может решить проблему программа в автозагрузке пользователя:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
 function  LastInput: DWord;
 var  
  LInput: TLastInputInfo; 
 begin 
   try 
    LInput.cbSize := SizeOf(TLastInputInfo);
    GetLastInputInfo(LInput);
    Result := GetTickCount - LInput.dwTime;
   except 
    Result :=  0 ;
   end ;
 end ;
...
     try 
       if  LastInput> 900000   then 
         begin 
          ExitWindowsEx(
         end 
       else 
         begin 
          ;
         end ;
     except 
      ;
     end ;
есть две проблемы:
1) надо вешать каждому юзеру, а это лишняя оперативка :(
2) процесс принадлежит пользователю и он может его выгрузить. Но если спрятать от диспетчера задач - прокатит.
Чисто теоретически можно выйти на API терминального сервера и оттуда копать - но тут я не смотрел, не заню.А вот это уже мысль ! Спасибо. Тем более, что никто там руками ничего закрывать не будет, вроде вменяемые люди работают.
...
Рейтинг: 0 / 0
Скрипт для выявления "висящих" подключений
    #34275374
Оффтопик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если кому интересно, могу выложить исходники (BCB5) проги, которую сваял по мотивам http://www.sql.ru/forum/actualpost.aspx?tid=386599#3676650
В ней зашита возможность задать 3 события, которые происходят по истечении определенного времени простоя пользователя. В качестве реакции на событие можно выбрать либо запуск приложения (например, чтобы отправить SMS-ку, или вызвать shutdown.exe, или что угодно еще), либо завершение сеанса. Если выбрано завершение сеанса, то за 15 сек (время настраивается) выдается предупреждение пользователю. Если пользователь что-то сделает (достаточно шевельнуть мышкой) за время действия предупреждения, то завершение сеанса отменяется до следующего срабатывания события.
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Windows [игнор отключен] [закрыт для гостей] / Скрипт для выявления "висящих" подключений
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]