Вопрос № 64221: Моя обычная схема определения хэндла окна, над которым находится курсор мыши: GetCursorPos --> WindowFromPoint.
Оказалось, что интерактивный сервис (тип - win32, тип запуска - auto) работает в какой-то своей "среде", в которой даже н...
Вопрос № 64.221
Моя обычная схема определения хэндла окна, над которым находится курсор мыши: GetCursorPos --> WindowFromPoint.
Оказалось, что интерактивный сервис (тип - win32, тип запуска - auto) работает в какой-то своей "среде", в которой даже нет курсора мыши (GetCursorPos возвращает false, после этого GetLastError==0).
Вопрос: как определить, что под курсором у текущего (в смысле последнего (а лучше - всех) залогинившихся пользователей на машине с ОС WinXP Pro) пользователя?
Отправлен: 25.11.2006, 23:56
Вопрос задал: Spok (статус: 4-ый класс)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 1)
Отвечает: Bob Johnson
Здравствуйте, Spok!
не уверен на 100%, но предположу, что тебе нужно открыть десктоп пользователя, после чего сделать его активным для твоего потока. посмотри в msdn функцию
EnumDesktops
внизу страницы будет ссылка
Window Station and Desktop Functions
нажми на нее, там будут остальные функции по десктопам.
----
посмотрел msdn, скорее всего так и есть. там есть статья
HOWTO: Access the Application Desktop from a Service
ID: Q173687 (Keywords : kbKernBase kbWinOS2000 kbSecurity kbService kbDSupport kbGrpKernBase), в которой как раз обсуждается твой вопрос
Ответ отправил: Bob Johnson (статус: Академик) Россия, Калуга WWW:Программирование ---- Ответ отправлен: 26.11.2006, 02:14 Оценка за ответ: 5 Комментарий оценки: Спасибо, я так и думал. Статью, правда, не нашёл, всё оказалось ещё проще.