Получить название кликаемого приложения / активного окна - PullRequest
0 голосов
/ 23 ноября 2011

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

Эта программа Java должна работать в фоновом режиме без ведомапользователя и отправит имя приложения на удаленный сервер.

Ответы [ 2 ]

1 голос
/ 23 ноября 2011

Хотя я ставлю под сомнение мотивы этого, это не будет возможно в рамках Java API.Вам нужно будет использовать JNI для взаимодействия с базовой ОС или совершать вызовы внешней программы, которая может предоставить вам эту информацию.

0 голосов
/ 23 ноября 2011

Я написал приложение для отслеживания времени, которое делает что-то похожее в прошлом, чтобы отслеживать, как я трачу время на различные проекты / приложения и т. Д. Идея состояла в том, чтобы отслеживать использование моего приложения локально и использовать запрос POST для веб-сервер для централизованного ведения журнала. Я мог также запустить это приложение на любой машине, которую хотел, и запрос POST все равно возвращался бы к центральному серверу, чтобы я мог отслеживать свою активность на нескольких машинах.

Вы можете использовать JNI для привязки к Win32 API , который затем может дать вам доступ к заголовкам окон, информации о процессах и т. Д.

Этот Q / A должен помочь вам начать: Как я могу прочитать заголовок окна с помощью JNI или JNA?

Где-то (я не могу найти его прямо сейчас) в сети есть .JAR, который оборачивает win32 API, что делает этот тип функциональности очень простым в Java.

...