Показать сообщение отдельно
  #1  
Старый 17.06.2014, 17:27
axonaro axonaro вне форума
Прохожий
 
Регистрация: 29.10.2013
Сообщения: 4
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию Получение hwnd процесса запущенного другим пользователем

Пользуюсь функцией GetHWndByPID и она работает если процессы запущены одним пользователем в текущем сеансе.

Цель : одно приложение на ПК, т.е при запуске идет проверка на одновременное исполнение, если приложение уже запущено, то вновь запускаемое посредством SendMessage шлет сигнал WM_QUIT всем "старым", и все старые приложения закрываются, а остается последнее запущенное.

Это работает в рамках одного сеанса, когда приложение запускаются одним и тем же пользователем. И не работает если приложение запускается в разных сеансах.

Вопрос : как получить hwnd процесса запущенного другим пользователем в другом сеансе зная его process_id ?

PS Или каким еще образом можно закрывать ранее запущенные версии и оставлять только вновь запускаемое ?
Ответить с цитированием