Get another process's Window Station
- From
- Alexander Zatvornitskiy (2:5025/3.131)
- To
- Boris Rudakov ()
- Date
- 2003-10-27T12:48:30Z
- Area
- CARBON.COPY
* Forwarded from area 'SU.WINDOWS.NT.PROG'
Привет Boris!
26 октября 2003 в 11:32, Boris Rudakov в своем письме к All писал:
BR> Есть хотение, зная ID произвольного процесса, выудить имя его Window
BR> Station.
BR> * В моей докумментации по QuerySystemInformation ничего на тему WS
BR> нету.
BR> * Следствие показало, что User32's GetProcsssWindowStation не лезет к
BR> Native API, а напрямую спрашивает ядро. Причем, свой ID не перерадет,
BR> т.е. юзаемая функция - только для current process.
BR> Чего делать ?
BR> Пока приходит в голову только очень громоздкий метод:
BR> 1. По QuerySystemInformation выудить все процессы и нити.
BR> 2. Для нитей выудить их десктопы.
BR> 3. Поенумеровать винстанции
BR> 4. Для каждой винстанции выудить ее десктопы
BR> 5. Сопоставить полученные на шагах 2 и 4 десктопы
BR> (но будут ли HDESK одного десктопа при этом совпадать ?)
BR> Попробовать-то можно, но уже щаз понятно что это - громоздко.
BR> Есть другие пути ?
ну, ..., хук ещё можно внедрить ...
Alexander, zatv@bk.ru
---
* Origin: Знай край, да не падай. (2:5025/3.131)