Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Как вызвать функцию в чужом а.п.

465
02 ноября 2012 года
QWERYTY
595 / / 25.03.2012
Пытаюсь получить данные с чужой программы.
Есть программа в которую я внедряю удалённым потоком длл. Есть моя программа которая должна в определённый момент вызвать функцию в этой самой внедрённой длл.

В интернете инфы мало(если у меня проблемы с поиском, ткните носом). Где то пишут про RPC при этом не доводя тему до примеров, где то про сокеты или про пайпы, где то про GetThreadContext.

Подскажите самый простой и эффективный метод решения изложенной проблемы.
Всё это делается в пределах одной машины. Операционка Win XP. Администраторский доступ есть.
465
02 ноября 2012 года
QWERYTY
595 / / 25.03.2012
Может фаилмаппинг? Отобразить библиотеку в своём адресном пространстве, или может ещё какие варианты есть?
7
02 ноября 2012 года
@pixo $oft
3.4K / / 20.09.2006
Через именованые каналы чем не устраивает способ?
465
03 ноября 2012 года
QWERYTY
595 / / 25.03.2012
Я даже не могу сказать устраивает или нет.
Почитав немного про эти каналы вижу такую картину:

Моя прога создает именованный канал, открывает его и записывает туда данные которые должны оказаться в длл.
Далее моя прога загружает в чужую прогу длл и та сразу открывает именованный канал и считывает данные. Эту часть я надеюсь понял.
Допустим данные необходимые функции передали, но как её вызвать я чёто не понял.
465
03 ноября 2012 года
QWERYTY
595 / / 25.03.2012
В общем задача порождать события в длл и передача данных.

Любые идеи(кроме сообщений), ссылки, фрагменты кода.


С интернетом будут проблемы, но тема интересна. Обязательно отреагирую на сообщения как смогу
465
04 ноября 2012 года
QWERYTY
595 / / 25.03.2012
Сделал удалённым потоком. Как раз пригодилась функция которую я очень долго писал для извлечения адреса функции в любом пользовательском процессе.
Зато теперь вышло быстро. Я извлёк адрес своей функции в длл и указал его как адрес функции потока.
Записал в процесс "жертву" данные, и передал указатель на них в функцию потока.
Получилось и событие и передача данных.

С учётом что у меня была функция для извлечения адресов функций более простого решения не вижу.
Всем спасибо.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог