Как вызвать функцию в чужом а.п.
Есть программа в которую я внедряю удалённым потоком длл. Есть моя программа которая должна в определённый момент вызвать функцию в этой самой внедрённой длл.
В интернете инфы мало(если у меня проблемы с поиском, ткните носом). Где то пишут про RPC при этом не доводя тему до примеров, где то про сокеты или про пайпы, где то про GetThreadContext.
Подскажите самый простой и эффективный метод решения изложенной проблемы.
Всё это делается в пределах одной машины. Операционка Win XP. Администраторский доступ есть.
Может фаилмаппинг? Отобразить библиотеку в своём адресном пространстве, или может ещё какие варианты есть?
Через именованые каналы чем не устраивает способ?
Почитав немного про эти каналы вижу такую картину:
Моя прога создает именованный канал, открывает его и записывает туда данные которые должны оказаться в длл.
Далее моя прога загружает в чужую прогу длл и та сразу открывает именованный канал и считывает данные. Эту часть я надеюсь понял.
Допустим данные необходимые функции передали, но как её вызвать я чёто не понял.
Любые идеи(кроме сообщений), ссылки, фрагменты кода.
С интернетом будут проблемы, но тема интересна. Обязательно отреагирую на сообщения как смогу
Зато теперь вышло быстро. Я извлёк адрес своей функции в длл и указал его как адрес функции потока.
Записал в процесс "жертву" данные, и передал указатель на них в функцию потока.
Получилось и событие и передача данных.
С учётом что у меня была функция для извлечения адресов функций более простого решения не вижу.
Всем спасибо.