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

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

U>
U>PeekMessage(&msg,NULL,0,0,PM_NOREMOVE);
U>

U>, но хук так и не срабатывает. Вижу 1 вариант: все же очередь не создается таким методом, о чем свидетельствует отсутствие возможности в Spy++ поймать события. Могу ли все-таки создать очередь сообщений в консольном приложении без создания своего невидимого окна/потока?
А у меня вообще не работает хук в консоле. Я тут на досуге проверил, хук не устанавливается в консоль. То есть SetWindowsHookEx возврашает не нулевой хендл, LastError = 0, а хуковая длл в консольный процесс не грузится. Так-что возможно придется попробовать что либо другое, либо инжектиться в консольный процесс как-то по другому, либо снаружи работать через Console functions.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.