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

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

Восстановить пароль Регистрация
 
siriusED
 Аватар для siriusED
19 / 19 / 3
Регистрация: 20.05.2010
Сообщений: 484
17.08.2014, 03:43     Передача или редактирование данных в Dll #1
Во общем ситуация такая:
Инжектю я dll'ку в процесс, и она там в цыкле выводит на пример Messagebox(...), вот как я могу изменить выводимый текст в выводимом dll;кой Messagebox'е? Я пока нубик по плюсам, хотел бы узнать как это делается и возможно ли это во обще?

Добавлено через 5 часов 50 минут
Все еще актуально...
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.08.2014, 03:43     Передача или редактирование данных в Dll
Посмотрите здесь:

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

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

Вот так мне надо...
WhiteP
605 / 203 / 23
Регистрация: 20.11.2012
Сообщений: 419
18.08.2014, 17:05     Передача или редактирование данных в Dll #4
Читай про обмен данными между процессами (и синхронизацию). Способов много (проекции, пайпы etc.). Тут по сути клиент-сервер (читатель-писатель).
DrOffset
6450 / 3824 / 885
Регистрация: 30.01.2014
Сообщений: 6,618
18.08.2014, 17:51     Передача или редактирование данных в Dll #5
Цитата Сообщение от siriusED Посмотреть сообщение
Например: Пишу приложение на C#, инжектю мою dll'ку в процесс "someproc.exe", запускаю свое приложение написанное на C#, ввожу в поле нужный мне текст "OneTwoThre", dll'ка принимает этот текст и в окне "someproc.exe" выводит его - Messagebox("OneTwoThre"), меняю текст на другой, жму применить, и dll'ка выводит уже другой текст...
Делаешь в dll экспортируемую функцию, принимающую твою строку, эта функция будет показывать текст в MessageBox, который ты передал в нее. Если все так, как ты написал, то это просто.
ISergey
Maniac
Эксперт С++
 Аватар для ISergey
1331 / 864 / 50
Регистрация: 02.01.2009
Сообщений: 2,622
Записей в блоге: 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
Эксперт С++
 Аватар для ISergey
1331 / 864 / 50
Регистрация: 02.01.2009
Сообщений: 2,622
Записей в блоге: 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
 Аватар для siriusED
19 / 19 / 3
Регистрация: 20.05.2010
Сообщений: 484
18.08.2014, 22:46  [ТС]     Передача или редактирование данных в Dll #10
Да какой меседж бокс.. я его чисто для примера взял, там в dll'ке реализован D3D хук и процесс куда я инжекчу эту dll'ку - это DirectX-приложение(например игра какая нибудь). Вот хук выводит просто статический текст(забитый в переменной text в dll'ке), а мне нужно что б эта dll'ка каким то образом могла принимать текст для вывода а не просто статический рисовать... Вот что мне нужно на самом деле...
При чом dll'ка написана на c++ а передавать ей текст я хочу из прилодения написанного на c#.

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

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

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

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

Не по теме:


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

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

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

Текущее время: 04:02. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru