Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
siriusED
19 / 19 / 3
Регистрация: 20.05.2010
Сообщений: 485
#1

Передача или редактирование данных в Dll - C++

17.08.2014, 03:43. Просмотров 601. Ответов 11
Метки нет (Все метки)

Во общем ситуация такая:
Инжектю я dll'ку в процесс, и она там в цыкле выводит на пример Messagebox(...), вот как я могу изменить выводимый текст в выводимом dll;кой Messagebox'е? Я пока нубик по плюсам, хотел бы узнать как это делается и возможно ли это во обще?

Добавлено через 5 часов 50 минут
Все еще актуально...
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Brendon
Заблокирован
17.08.2014, 04:45     Передача или редактирование данных в Dll #2
Ну так DLL-ку ты писал? Если да - то просто поменяй текст в коде, если не ты, то никак ты не изменишь текст, хотя...Если бы ты был не
Цитата Сообщение от siriusED Посмотреть сообщение
Я пока нубик по плюсам
, то для изменения текста ты бы задействовал CheatEngine, либо набор SoftIce + IDA Pro
siriusED
19 / 19 / 3
Регистрация: 20.05.2010
Сообщений: 485
18.08.2014, 13:09  [ТС]     Передача или редактирование данных в Dll #3
Да нет же, все совсем не так... dll'ку писал я, но я не хочу что б она выводила статический текст, а динамически могла как то принимать этот текст при чом из совсем другого приложения принимать...

Например: Пишу приложение на C#, инжектю мою dll'ку в процесс "someproc.exe", запускаю свое приложение написанное на C#, ввожу в поле нужный мне текст "OneTwoThre", dll'ка принимает этот текст и в окне "someproc.exe" выводит его - Messagebox("OneTwoThre"), меняю текст на другой, жму применить, и dll'ка выводит уже другой текст...

Вот так мне надо...
WhiteP
606 / 204 / 23
Регистрация: 20.11.2012
Сообщений: 426
18.08.2014, 17:05     Передача или редактирование данных в Dll #4
Читай про обмен данными между процессами (и синхронизацию). Способов много (проекции, пайпы etc.). Тут по сути клиент-сервер (читатель-писатель).
DrOffset
6859 / 4070 / 927
Регистрация: 30.01.2014
Сообщений: 6,867
18.08.2014, 17:51     Передача или редактирование данных в Dll #5
Цитата Сообщение от siriusED Посмотреть сообщение
Например: Пишу приложение на C#, инжектю мою dll'ку в процесс "someproc.exe", запускаю свое приложение написанное на C#, ввожу в поле нужный мне текст "OneTwoThre", dll'ка принимает этот текст и в окне "someproc.exe" выводит его - Messagebox("OneTwoThre"), меняю текст на другой, жму применить, и dll'ка выводит уже другой текст...
Делаешь в dll экспортируемую функцию, принимающую твою строку, эта функция будет показывать текст в MessageBox, который ты передал в нее. Если все так, как ты написал, то это просто.
ISergey
Maniac
Эксперт С++
1347 / 880 / 52
Регистрация: 02.01.2009
Сообщений: 2,645
Записей в блоге: 1
18.08.2014, 19:22     Передача или редактирование данных в Dll #6
Цитата Сообщение от siriusED Посмотреть сообщение
Да нет же, все совсем не так... dll'ку писал я, но я не хочу что б она выводила статический текст, а динамически могла как то принимать этот текст при чом из совсем другого приложения принимать...
Например: Пишу приложение на C#, инжектю мою dll'ку в процесс "someproc.exe", запускаю свое приложение написанное на C#, ввожу в поле нужный мне текст "OneTwoThre", dll'ка принимает этот текст и в окне "someproc.exe" выводит его - Messagebox("OneTwoThre"), меняю текст на другой, жму применить, и dll'ка выводит уже другой текст...
Вот так мне надо...
Смотри в сторону PIPE
Цитата Сообщение от DrOffset Посмотреть сообщение
Делаешь в dll экспортируемую функцию, принимающую твою строку, эта функция будет показывать текст в MessageBox, который ты передал в нее. Если все так, как ты написал, то это просто.
И как ты себе это представляешь? dll находится в адресном пространстве приложения которое и понятия не имеет о ней. В теории то можно так сделать, но это нужно иметь себе мозг с вызовами CreateRemoteThread.. имхо бредом пахнет.

Не по теме:

то для изменения текста ты бы задействовал CheatEngine, либо набор SoftIce + IDA Pro
да именно SoftIce... нет слов.

Brendon
Заблокирован
18.08.2014, 19:59     Передача или редактирование данных в Dll #7
Цитата Сообщение от ISergey Посмотреть сообщение
И как ты себе это представляешь? dll находится в адресном пространстве приложения которое и понятия не имеет о ней
Что за чушь? Одна простая экспортная функция DLL-ки, которая будет выводить месдж бокс, в чём фикус то ? Тут наверное проблема в подключения NativeDLL в софт на C#. Но та же вроде какие - то CLI есть ...
ISergey
Maniac
Эксперт С++
1347 / 880 / 52
Регистрация: 02.01.2009
Сообщений: 2,645
Записей в блоге: 1
18.08.2014, 20:05     Передача или редактирование данных в Dll #8
Цитата Сообщение от Brendon Посмотреть сообщение
Что за чушь? Одна простая экспортная функция DLL-ки, которая будет выводить месдж бокс, в чём фикус то ? Тут наверное проблема в подключения NativeDLL в софт на C#. Но та же вроде какие - то CLI есть ...
Цитата Сообщение от siriusED Посмотреть сообщение
Инжектю я dll'ку в процесс
Тоесть dll была внедрена к примеру в процесс explorer.exe, этот процесс понятия не имеет что ему что то внедрили и вызвать просто так нужную функцию он не может..
DrOffset
18.08.2014, 20:08
  #9

Не по теме:

Цитата Сообщение от ISergey Посмотреть сообщение
имхо бредом пахнет.
Ну это был бы не бред, если бы я сразу рассмотрел слово "инжект"
А, с твоей стороны все-таки было бы вежливо сперва узнать, что я имел в виду, прежде чем делать далеко идущие выводы. Хотя по сути твой комментарий верен.
У автора прошу прощения.

siriusED
19 / 19 / 3
Регистрация: 20.05.2010
Сообщений: 485
18.08.2014, 22:46  [ТС]     Передача или редактирование данных в Dll #10
Да какой меседж бокс.. я его чисто для примера взял, там в dll'ке реализован D3D хук и процесс куда я инжекчу эту dll'ку - это DirectX-приложение(например игра какая нибудь). Вот хук выводит просто статический текст(забитый в переменной text в dll'ке), а мне нужно что б эта dll'ка каким то образом могла принимать текст для вывода а не просто статический рисовать... Вот что мне нужно на самом деле...
При чом dll'ка написана на c++ а передавать ей текст я хочу из прилодения написанного на c#.

Добавлено через 13 минут
...
siriusED
19 / 19 / 3
Регистрация: 20.05.2010
Сообщений: 485
20.08.2014, 03:23  [ТС]     Передача или редактирование данных в Dll #11
Решил сам, через обьявление переменных в дллке глобальными в виртуальном адресном пространстве этой дллки, всем спасибо.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.08.2014, 14:05     Передача или редактирование данных в Dll
Еще ссылки по теме:

C++ Передача по ссылке или указателю?
Возврат данных из .dll C++
C++ Передача данных
Передача в функцию по ссылке или указателю C++
C++ Редактирование DLL

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Alex5
20.08.2014, 14:05     Передача или редактирование данных в Dll
  #12

Не по теме:


Цитата Сообщение от siriusED Посмотреть сообщение
Во общем ситуация такая
в общем

Цитата Сообщение от siriusED Посмотреть сообщение
она там в цикле выводит
Цитата Сообщение от siriusED Посмотреть сообщение
возможно ли это вообще
вообще

Yandex
Объявления
20.08.2014, 14:05     Передача или редактирование данных в Dll
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru