В чистой среде терминального сервера на базе Windows я ищу способы принудительного завершения работы приложения после выхода из сеанса / тайм-аута.
С сервисами Citrix я мог бы использовать HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Citrix \ wfshell \ TWI для вывода списка всех приложений, которые должны быть немедленно завершены. Но без Citrix я не знаю, возможно ли это вообще. Надеюсь, для этого есть еще одна запись в реестре?
Справочная информация: некоторые неправильно работающие драйверы приводят к тому, что сеансы остаются открытыми после выхода из системы в течение более длительных периодов времени. Если бы мы могли зарегистрировать приложения, которые можно безопасно завершить, процесс очистки освободит ресурсы для сеансов намного быстрее. В нашей среде Citrix это оказало огромное влияние, поэтому мы ищем решение и для нашей чистой среды Windows.
Спасибо!
Ты когда нибудь пробовал утилиты командной строки для управления службами удаленного рабочего стола, например tskill ... или сбросить сеанс ...?
Вы можете исправить это, установив AutoEndTasks значение реестра "1"(REG_SZ).
По умолчанию "0":
Процессы не заканчиваются автоматически. Система ожидает завершения процесса, и, если процесс занимает больше времени, чем значение записи HungAppTimeout, появляется диалоговое окно «Завершить задачу», в котором говорится, что приложение не может ответить на запрос «Завершить задачу».
Вы можете настроить таймауты, настроив следующие значения реестра:
Как отмечает @Frankenstein, AutoEndTasks потенциально может завершить работу программ, не сохраняя изменения в открытых документах, следует учитывать два момента:
С административной точки зрения я считаю, что AutoEndTasks необходим. Если вы хотите выиграть у пользователей больше времени, вы можете настроить параметр реестра WaitToKillAppTimeout.