Здравствуйте, Unsacrificed, Вы писали:
U>Необходимо выполнение неких операций в контексте других приложений, причем действия должны запускаться из "моего" приложения. Для GUI приложений это реализовано через hook типа WH_GETMESSAGE (к приложению цепляется dll обрабатывающая этот hook и обрабатывает посылаемые "моим" приложением сообщения). Для консольных приложений (а точнее приложений без очереди событий) такое не проходит, отсюда вопрос: как реализовать такое взаимодействие для приложений без очереди событий (консольных)?
Можно попробовать добраться до консоли не из хука, а снаружи, из Вашего процесса. AttachConsole и т.д.
Console Functions.
Если все же нужно внедряться в косольный процесс то можно попробовать использовать не хуковый метод внедрения а, например, способ с CreateRemoteThread, и соответственно, взаимодействие между Вашим процессом и удаленным потоком организовать не сообщениями, а с помощью MemoryMapFile, Pipe, MailSlots и т.п.
Уточните какие консольные приложения Вы имеете ввиду? Если это какие либо terminal emulation то стоит копнуть в сторону hllapi или ehllapi. Большенство широко используемых терминалов их поддерживают.( с этими api можно работать напрямую, из внешнего процесса).