Windows-терминалы WTware

Программа-клиент службы терминалов Windows Terminal Services, для бездисковых терминалов и загрузки по сети. Основной сайт http://www.wtware.ru
Текущее время: Чт окт 19, 2017 7:05 pm

Часовой пояс: UTC+03:00




Начать новую тему  Ответить на тему  [ 6 сообщений ] 
Автор Сообщение
СообщениеДобавлено: Вт дек 20, 2016 3:16 pm 
Не в сети

Зарегистрирован: Пн окт 31, 2016 11:19 am
Сообщения: 28
Возникла необходимость палить работу/досуг пользователей. Вместо готовых монстрообразных программ нашёл следующий способ:

Скачиваем исходники и распаковываем их на диск D:
https://github.com/trmsjj/vnc_screenshot

Т.к. для удобства нужно знать имена пользователей, а не только адреса, я немного изменил код Program.cs
Вложение:
Program.rar [1.44 КБ]
44 скачивания
Для просмотра рекомендую Notepad++.

Если не берёте готовую программу моей сборки
Вложение:
vncss.rar [54.96 КБ]
45 скачиваний
В командной строке выполняем:

Код:
C:\Windows\System32>"C:\Windows\Microsoft.NET\Framework\v3.5\MSBuild.exe" "D:\vnc_screenshot-master\vnc_screenshot\vnc_screenshot.csproj"

Видим "Build succeeded."

Проверяем работу
Код:
C:\Windows\System32>"D:\vnc_screenshot-master\vnc_screenshot\bin\Debug\vnc_screenshot.exe" i:192.168.10.10 p:password o:"D:"

Пакетный режим
Код:
C:\Windows\System32>"D:\vnc_screenshot-master\vnc_screenshot\bin\Debug\vnc_screenshot.exe" f:"D:\vnc_screenshot-master\vnc_screenshot\bin\Debug\iplist.txt" p:password o:"D:"

Если всё прошло хорошо, на диске "D:", который мы указали в параметре "о", увидим скриншот(ы).

Теперь можно сделать два скрипта
В первом делаем скриншоты:
Код:
# Получаем пользователей, которые сегодня логинились на терминальный сервер
# и создаем из них файл для программы vncss формата "ip:name"
#  Если >=WS2012 можно проверять доступность хоста "Test-NetConnection -ComputerName $event.Properties[2].Value -Count 1 -Port 5900"
$iplist = "D:\vncss\iplist.txt"
Out-File $iplist
$CurrentDate = Get-Date -Hour 0 -Minute 0 -Second 0
$allRDPevents = Get-WinEvent -ComputerName 192.168.1.4 -LogName "Microsoft-Windows-TerminalServices-RemoteConnectionManager/Operational" | ?{$_.id -eq 1149 } | ?{$_.TimeCreated -ge $CurrentDate }
$results = @{}
foreach ($event in $allRDPevents){
    if (($event.Properties[0].Value) -and !($results.($event.Properties[0].Value))) {
        $results += @{
            $event.Properties[0].Value = $event.Properties[2].Value
        }
    }
}
$results.Keys | foreach {
  $($results.Item($_))+":"+$_ | Out-File $iplist -Append
}
# делаем новые скиншоты
D:\vncss\vncss.exe f:"D:\vncss\iplist.txt" p:password:"D:\vncss\ss"


Во втором ограничиваем их количество
Код:
# в 00 часов каждый день

$pathss = "D:\vncss\ss\*.png"
$rar = "C:\Program Files\WinRAR\Rar.exe"
$Days = -30 # храним только последние 30 дней
$CurrentDate = Get-Date
$OldDate = $CurrentDate.AddDays($Days)

# Архивируем папку ss и очищаем её
$currentArhPath = $pathss + "\vncss-" + (get-date -Format yyyyMMdd) + ".rar"
&$rar a -m5 -s -ep1 -df $currentArhPath $pathss
# удаляем архивы старше $Day дней
Get-ChildItem $pathss | Where-Object { ( $_.LastWriteTime -lt $OldDate ) -and ($_.Extension -eq ".rar")} | Remove-Item


Дальше можно настроить расписание.


Последний раз редактировалось amxs3 Чт дек 22, 2016 12:21 pm, всего редактировалось 4 раза.

Пожаловаться на это сообщение
Вернуться к началу
СообщениеДобавлено: Вт дек 20, 2016 4:46 pm 
Не в сети
Разработчик
Разработчик

Зарегистрирован: Ср окт 01, 2003 12:06 am
Сообщения: 8908
Откуда: Роcсия, Тольятти
Круто.

Добавлю: если у пользователя два монитора, второй можно увидеть подключившись с тем же паролем по VNC к порту 5901.


Пожаловаться на это сообщение
Вернуться к началу
СообщениеДобавлено: Вт дек 20, 2016 10:08 pm 
Не в сети

Зарегистрирован: Пн янв 19, 2015 3:18 pm
Сообщения: 307
aka писал(а):
Круто.

Добавлю: если у пользователя два монитора, второй можно увидеть подключившись с тем же паролем по VNC к порту 5901.


Как насчет зашить это в втварь? Пусть конфигуратор снимает скриншотики я считаю :)


Пожаловаться на это сообщение
Вернуться к началу
СообщениеДобавлено: Вт дек 20, 2016 10:19 pm 
Не в сети
Разработчик
Разработчик

Зарегистрирован: Ср окт 01, 2003 12:06 am
Сообщения: 8908
Откуда: Роcсия, Тольятти
Ага. Скриншотики, потом клавиатуру с мышью, закончится VNC клиентом в конфигураторе...


Пожаловаться на это сообщение
Вернуться к началу
СообщениеДобавлено: Пн мар 27, 2017 3:51 pm 
Не в сети

Зарегистрирован: Пн окт 31, 2016 11:19 am
Сообщения: 28
aka писал(а):
Ага. Скриншотики, потом клавиатуру с мышью, закончится VNC клиентом в конфигураторе...


А, кстати, есть идея: конфигуратор пусть остаётся для одминов, а для безопасников и прочих бездельников сделать виндовую прогу, которая всё это будет иметь. И продавать за отдельные деньги. Ну и мне за идею лицензию нахаляву ))


Пожаловаться на это сообщение
Вернуться к началу
СообщениеДобавлено: Пт апр 07, 2017 7:52 pm 
Не в сети

Зарегистрирован: Пт мар 31, 2017 3:46 am
Сообщения: 45
amxs3 писал(а):
aka писал(а):
Ага. Скриншотики, потом клавиатуру с мышью, закончится VNC клиентом в конфигураторе...


А, кстати, есть идея: конфигуратор пусть остаётся для одминов, а для безопасников и прочих бездельников сделать виндовую прогу, которая всё это будет иметь. И продавать за отдельные деньги. Ну и мне за идею лицензию нахаляву ))



+5


Пожаловаться на это сообщение
Вернуться к началу
Показать сообщения за:  Поле сортировки  
Начать новую тему  Ответить на тему  [ 6 сообщений ] 

Часовой пояс: UTC+03:00


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 2 гостя


Вы можете начинать темы
Вы можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Создано на основе phpBB® Forum Software © phpBB Limited
Русская поддержка phpBB