EnumWindows. Перехват окон, созданных другим процессом
Привет, булка!
Смотри, какая есть задача: Есть win-сервис, который запущен от user1.
А я сижу под юзером user2.
Я запускаю какую-нибудь программу, у неё вылазит окно на рабочий стол. Программа имеет 1 основной процесс, он работает, естественно, от user2.
А мой сервис, работающий под user1 должен это окно обнаружить, и произвести с ним страшные махинации.
Я использую EnumWindows функцию из WinAPI. По-идее, она должна перечислить мне все окна, одно из которых будет как раз то самое окно.
но! не находит. Окно есть, а дебугер говорит, что нет его.
ока, я думал, может юзеру1 прав не дано, чтоб окна от user2 подсматривать. Написал тулзу WinForms, запустил её от имени user1 - прекрасно находит всё, что нужно.
Итак, вопрос: влияет ли на EnumWindows тот факт, что процесс запущен в неинтерактивной среде? И может ли он таки получить список окон, созданных процессами другого пользователя?
|