Вопрос

В настоящее время я использую SetWindowsHookEx для добавления моей DLL в другой процесс, однако он не загружается сразу. Я заметил, что если я вручную нажму на окно, оно будет загружено, так что я предполагаю, что оно ожидает какого-то типа сообщения, чтобы активировать процесс? В настоящее время я активирую его с помощью

SetForegroundWindow(otherAppHwnd);
SetForegroundWindow(myAppHwnd);

Но это похоже на взлом и не всегда работает (то есть otherAppHwnd свернут на панель задач.

Любые указатели были бы великолепны!

Изменить . Это крюк СВТ

Это было полезно?

Решение 2

Похоже, это невозможно.

Поэтому вместо того, чтобы обойти это, я решил просто покататься с ним и сделать так, чтобы мой дизайн справился с этим.

Другие советы

Я успешно использовал это:

SendMessage(otherAppHwnd, WM_NULL, 0, 0);

чтобы достичь того, что вы хотите, но только с низкоуровневыми хуками, такими как WH_GETMESSAGE, а не с CBT-хуками. Это может сработать. 8 -)

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top