Активация внедренной DLL в Windows
Вопрос
В настоящее время я использую SetWindowsHookEx для добавления моей DLL в другой процесс, однако он не загружается сразу. Я заметил, что если я вручную нажму на окно, оно будет загружено, так что я предполагаю, что оно ожидает какого-то типа сообщения, чтобы активировать процесс? В настоящее время я активирую его с помощью
SetForegroundWindow(otherAppHwnd);
SetForegroundWindow(myAppHwnd);
Но это похоже на взлом и не всегда работает (то есть otherAppHwnd свернут на панель задач.
Любые указатели были бы великолепны!
Изменить . Это крюк СВТ
Решение 2
Похоже, это невозможно.
Поэтому вместо того, чтобы обойти это, я решил просто покататься с ним и сделать так, чтобы мой дизайн справился с этим.
Другие советы
Я успешно использовал это:
SendMessage(otherAppHwnd, WM_NULL, 0, 0);
чтобы достичь того, что вы хотите, но только с низкоуровневыми хуками, такими как WH_GETMESSAGE, а не с CBT-хуками. Это может сработать. 8 -) р>