2012-02-12 4 views
1

Можно ли изменить фокус внутри другого приложения? Я говорю о различных представлениях (списки данных, пользовательские представления), а не о главных окнах. У них также есть дескрипторы, spy ++ показывает их правильно и прочее, но когда я пробовал установить SetFocus(), это было бесполезно. Делает ли SetFocus() работу только для главных окон или что не так? БлагодаряФокус hWnd другого приложения

ответ

1

Из статьи MSDN:

Окно должно быть присоединен к очереди сообщений вызывающего потока

Вам нужно AttachThreadInput() в первую очередь. GetWindowThreadProcessId(), чтобы получить поток, которому принадлежит окно.

+0

О, сладкий, я боялся, что это не выход. Спасибо, в следующий раз я не должен переходить прямо к примерам. Просто последующее: вызывает приложение, которое можно обнаружить в оригинальном приложении? –

+0

Это совершенно другой вопрос, нажмите кнопку «Задать вопрос». И не забывайте упоминать, почему это важно. –

+0

Плохая идея прикрепить темы, которые не были предназначены для прикрепления. Это может привести к взаимоблокировкам. –

Смежные вопросы