Как я могу проверить активность/бездействие пользователя из службы Windows, написанной на Python? ⇐ Python
-
Гость
Как я могу проверить активность/бездействие пользователя из службы Windows, написанной на Python?
Я написал службу Windows на Python, которая должна иметь возможность обнаруживать активность пользователя. В обычных обстоятельствах я бы вызвал метод Windows GetLastInputInfo, но этот метод не работает при вызове службой. Вот соответствующая информация из документации по этому методу:
Эта функция полезна для обнаружения простоя входа. Однако GetLastInputInfo не предоставляет общесистемную информацию, вводимую пользователем, во всех запущенных сеансах. Скорее, GetLastInputInfo предоставляет информацию о пользовательском вводе, специфичную для сеанса, только для того сеанса, который вызвал эту функцию.
Основной момент заключается в следующем: «только для того сеанса, который вызвал функцию»
При вызове службы GetLastInputInfo всегда будет возвращать 0, поскольку служба работает в сеансе 0 и не получает входных данных! Как моя служба может обнаружить активность пользователя в сеансе консоли?
Я написал службу Windows на Python, которая должна иметь возможность обнаруживать активность пользователя. В обычных обстоятельствах я бы вызвал метод Windows GetLastInputInfo, но этот метод не работает при вызове службой. Вот соответствующая информация из документации по этому методу:
Эта функция полезна для обнаружения простоя входа. Однако GetLastInputInfo не предоставляет общесистемную информацию, вводимую пользователем, во всех запущенных сеансах. Скорее, GetLastInputInfo предоставляет информацию о пользовательском вводе, специфичную для сеанса, только для того сеанса, который вызвал эту функцию.
Основной момент заключается в следующем: «только для того сеанса, который вызвал функцию»
При вызове службы GetLastInputInfo всегда будет возвращать 0, поскольку служба работает в сеансе 0 и не получает входных данных! Как моя служба может обнаружить активность пользователя в сеансе консоли?