|
v7: Бездействующий терминальный сеанс | ☑ | ||
---|---|---|---|---|
0
АЛьФ
23.12.20
✎
10:29
|
1С запускается утром из планировщика для для выполнения автоматических действий. В настройках терминальных сеансов стоит "ограничение бездействующих сеансов" - 1 час, и галка "Завершить сеанс".
Что можно пнуть со стороны 1С, чтобы винда восприняла это, как действие пользователя и скинула счетчик бездействия? Пытался вызывать SendKey, не помогает. Решение надо именно со стороны 1С. Настройку бездействия не меняем. |
|||
1
acht
23.12.20
✎
10:49
|
Бездействие терминального сеанса определяется не по активности программы, а по поступление данных через канал от клиента. А там все сложно, например, если сеанс свернут, свежая винда начинает заниматься "оптимизацией" и перестает посылать в канал мышь и клавиатуру вообще, даже если они прилетели нужному хендлу. Это где-то хачится в реестре, ЕМНИП, но там много и другого геморроя.
Запускай сеанс непосредственно на сервере |
|||
2
АЛьФ
23.12.20
✎
10:52
|
2(1) Понятно. Большое спасибо.
|
|||
3
Aleksey
23.12.20
✎
11:01
|
(2) Привязать телефон к мышки поставить будильник каждый час, чтобы он вибрировал и шевелил мышкой
|
|||
4
prince64
23.12.20
✎
13:48
|
(3) сложная аппаратная схема. Вполне достаточно проги - автонажималки кнопок. Задать таймер, чтобы раз в N время двигать мышкой
|
|||
5
Ёпрст
23.12.20
✎
13:52
|
(0) домен ?
В групповых политиках можно конкретному юзверю переназначить эти параметры |
|||
6
АЛьФ
23.12.20
✎
13:54
|
2(5) Решение надо именно со стороны 1С. Настройку бездействия не меняем.
|
|||
7
arsik
гуру
23.12.20
✎
13:55
|
(5) Ну можно и без домена, у конкретного пользователя терминального сервера увеличить время органичения.
|
|||
8
Ёпрст
23.12.20
✎
13:55
|
в 1cpp был метод
https://www.1cpp.ru/docum/icpp/html/Informer.html#getidletimeofsystem мот есть и обратный ?.. |
|||
9
arsik
гуру
23.12.20
✎
13:56
|
(6) тогда никак
|
|||
10
Cthulhu
23.12.20
✎
13:59
|
скрипт autoit3
кстати, аутоит - прикольная штука. позволяет быстренько слепить и отладить довольно мощные и тонкие инструменты. |
|||
11
Ёпрст
23.12.20
✎
14:03
|
А открытие стороннего окна.. это время не отменяют ?..типа ie какой-нить открыть/закрыть.. или блокнот
|
|||
12
АЛьФ
23.12.20
✎
14:20
|
Обращаю внимание, что система реально не бездействует, а молотит данные. Просто действий пользователя никаких нет.
2(10) Есть пример вызова из 1С? |
|||
13
АЛьФ
23.12.20
✎
14:21
|
2(11) Запускается 1С в качестве удаленного приложения. Без рабочего стола.
|
|||
14
Cthulhu
23.12.20
✎
14:35
|
(12): конечно есть. давно слепил exe-шник, меняющий заголовки окон и тасующий их как надо (по строке параметров) - запускаю его как надо из 1с и вперел. там и мышкой можно поелозить и потыкать.
|
|||
15
Cthulhu
23.12.20
✎
14:36
|
ЗЫ: тупой вопрос: а если приостанавливать и задавать вопрос с тайаутом?..
|
|||
16
АЛьФ
23.12.20
✎
14:39
|
2(15) А что это даст?
|
|||
17
uno-group
23.12.20
✎
15:51
|
А зачем ограничивать сеанс для робота, если после выполнения автоматических действий он может завершить сеанс самостоятельно.
|
|||
18
Ёпрст
23.12.20
✎
16:05
|
(17) там не роботу, там всем ограничен.
Хотя, это можно обойти, тупо роботу в групповых политиках дать другие настройки |
|||
19
АЛьФ
23.12.20
✎
16:19
|
2(17) У нас вот такой вот админ.
|
|||
20
mistеr
23.12.20
✎
16:22
|
(0) Запускайте этот сеанс прямо на сервере
|
|||
21
uno-group
23.12.20
✎
16:34
|
На локальном компе отключать подключение убивая РДП сеанс и переподключаться с какойто переодичностью.
|
|||
22
ELEA26
23.12.20
✎
16:52
|
Set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.SendKeys("{SCROLLLOCK}") WScript.Sleep 3600000 |
|||
23
uno-group
23.12.20
✎
16:53
|
На стороне сервера если известен ИП с которого подключается этот рдп сеанс можно периодически обрывать сеть на этого клиента
Типа route add 192.168.1.20 mask 255.255.255.0 192.168.1.255 и через минуту удалять этот маршрут командой route delete 192.168.1.20 mask 255.255.255.0 192.168.1.255 20- ип машины с сеансом. 255 несуществующий в сети ип. Насколько помню обрыв и востановление сети он воспринимает как какую то активность на стороне клиента. Можно проверить тупо вытянув сетевой шнур у клиента и вставив его назад через какое то время. |
|||
24
ELEA26
23.12.20
✎
16:53
|
ну не 3600000 а там 2000000
|
|||
25
Ёпрст
23.12.20
✎
16:54
|
(22) дык не работает это, ТС уже делал
|
|||
26
ELEA26
23.12.20
✎
16:57
|
так он на клиенте делал или внутри, на сервере?
Изнутри, из сеанса - никак. |
|||
27
АЛьФ
23.12.20
✎
17:00
|
2(21) Запускается из планировщика. Доступны только действия из 1С.
2(22) Так не работает. Писал в (0), что пытался использовать SendKey. 2(23) Опять же не из 1С это делать надо будет, а снаружи. |
|||
28
ELEA26
23.12.20
✎
17:01
|
изнутри никак. увы.
|
|||
29
uno-group
23.12.20
✎
17:09
|
(27) команда системы(...), запустить приложение и делаем два батника
модно эти действия в планировщике не клиенте прописать |
|||
30
ELEA26
23.12.20
✎
17:12
|
(29) да не отработает оно изнутри. Хоть VLC с видосиком запускай. Только с клиента что-то может получиться.
|
|||
31
uno-group
23.12.20
✎
17:29
|
(30) только что проверил при обрыве сети и последующем ее востановление idle time сбрасывается на 0.
прописав кривой маршрут мы обрываем сеть. и после востановления сети таймер начинает считать с 0. |
|||
32
АЛьФ
23.12.20
✎
17:31
|
2(31) Что-то мне подсказывает, что 1С при этом весело потеряет SQL-сервер.
|
|||
33
acht
23.12.20
✎
17:35
|
(31) Осталось только вычислить адрес TS клиента, соединения от которого надо занулить.
Ну и, по-хорошему, рвать его исключительно для текущего процесса. |
|||
34
ELEA26
23.12.20
✎
17:36
|
не должен. Если RDP клиент и сервер 1Ц не одно лицо.
|
|||
35
uno-group
23.12.20
✎
17:36
|
(32) С какого перепугу мыж меняем маршрут от терминального сервера на клиентскую машину. не трогая маршруты терминального сервера и скл.
|
|||
36
acht
23.12.20
✎
17:38
|
(35) Ну, зато можно внезапно получить адрес маршрутизатора и весело грохнуть соединения сразу для всех =)
|
|||
37
ELEA26
23.12.20
✎
17:58
|
Ну раз такая пьянка:
cports.exe /close <Local Address> <Local Port> <Remote Address> <Remote Port> с https://www.nirsoft.net/utils/cports.html аналог TcpView, но можно с командной строки шалить |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |