Как планировщик задач определяет, вошел ли пользователь в интерактивный сеанс? - PullRequest
0 голосов
/ 29 января 2019

У нас есть сценарий PowerShell, который создает запланированное задание и запускает его.Нам нужен интерактивный сеанс, потому что у нас есть пользовательский интерфейс, в котором выполняется запланированная задача.Однако, когда скрипт запускает его, существует вероятность того, что интерактивный сеанс еще не полностью вошел в систему (это происходит сразу после того, как пользователь вошел в систему с помощью автоматического входа, впервые после присоединения к домену).Я полагаю, что он все еще настраивает профиль, поэтому он не может запустить задачу, и мы получаем код завершения 267011.

Как планировщик задач определяет, полностью ли активен интерактивный сеанс?Я хотел бы сделать это программно.

Я изучил код, используя объекты WMI Win32_logonsession и Win32_loggedonuser, однако я не уверен, что они скажут мне, что интерактивный сеанс полностью завершен.

Если я не могу как-то запросить интерактивный сеанс, кто-нибудь знает, могу ли я попытаться загрузить пользовательский интерфейс и перехватить определенное исключение, которое указывает, что слой пользовательского интерфейса недоступен?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...