Re[10]: Взаимодействие с dll, внедренными в "чужие" консольн
От: Unsacrificed  
Дата: 03.01.10 12:51
Оценка:
Здравствуйте, alexey_ma, Вы писали:

_>Зкземпляр класса будет создаваться в каждом процессе куда загруженна хуковая длл. Если нужны одельный экземпляр для потока то можно попробовать поиграться с DllMain, типа на DLL_THREAD_ATTACH создавать зкземпляр класса по new, на DLL_THREAD_DETACH делать ему delete.

_>Я с очередями не пробовал, возможно получится.

Ок, я могу выполнять некие действия при установке хука в контексте другого приложения, проходит на ура при этом даже на консольных приложениях (проверял MessageBox'ом. Но проблема в том, что хотя хук и вроде бы ставиться, он не срабатывает. Раньше я находил информацию, что если в консольном приложении вызвать Get/PeekMessage, то очередь сообщений будет создана. Я попробовал в инициализации класса вызвать
PeekMessage(&msg,NULL,0,0,PM_NOREMOVE);

, но хук так и не срабатывает. Вижу 1 вариант: все же очередь не создается таким методом, о чем свидетельствует отсутствие возможности в Spy++ поймать события. Могу ли все-таки создать очередь сообщений в консольном приложении без создания своего невидимого окна/потока?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.