|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
25.04.2012, 01:03 | #11 |
Пользователь
Регистрация: 26.02.2012
Сообщений: 20
|
Печалька в том что это не работает у меня я уже испробовал во всех позициях это =(
Точнее работает только для разных объектов с разными длинами он выводит 1 и туже Последний раз редактировалось 9esa; 25.04.2012 в 01:09. |
25.04.2012, 01:06 | #12 |
Пользователь
Регистрация: 26.02.2012
Сообщений: 20
|
А так спасибо огромное , не многие даже в живую могут понять=)
|
25.04.2012, 01:09 | #13 |
Форумчанин
Регистрация: 11.07.2010
Сообщений: 914
|
Ну так приведите код, иллюстрирующий проблему.
Чтоб можно было сразу запустить и сказать: Ага, вот о чем автор говорил! Ну ща посмотрим...) |
25.04.2012, 01:19 | #14 |
Пользователь
Регистрация: 26.02.2012
Сообщений: 20
|
Мой код к сожалению выложить не удастся, он насчитывает около 2 тысяч символов только в 1 файле и ещё пачка заголовочных файлов , а так код который запустить вот
Это в 1 проекте Код:
Код:
0x0018FC90 00 00 00 00 .... 0x0018FC94 d4 fe 18 00 Фю.. 0x0018FC98 00 38 38 39 .889 0x0018FC9C 00 ed 41 68 .нAh 0x0018FCA0 b8 88 41 00 ё€A. <-Здесь лежит наша строка (это расположение всегда разное в зависимости от длины) 0x0018FCA4 d4 fe 18 00 Фю.. 0x0018FCA8 00 00 00 00 .... Последний раз редактировалось 9esa; 25.04.2012 в 01:21. |
25.04.2012, 01:29 | #15 |
Форумчанин
Регистрация: 11.07.2010
Сообщений: 914
|
То есть второй проект это длл?
А wtte - это функция, которая из нее экспортируется? или нет? А то ведь может возникнуть подозрение, что пытаетесь из одного процесса читать память другого. Из приведенного отрывка кода этого конечно не понять. |
25.04.2012, 01:37 | #16 |
Пользователь
Регистрация: 26.02.2012
Сообщений: 20
|
Да все верно это подключаемая dll.
а wtte это просто функция в 1 проекте типа void wtte(string t ); Моя задача в dll получить нашу передаваемою строку и вывести в файл. Ну это 1 из ветвей проекта. |
25.04.2012, 01:41 | #17 |
Форумчанин
Регистрация: 11.07.2010
Сообщений: 914
|
Так процесс один? Или же все-таки перехват функций из другого.
Объясните, как строка попадает в длл. |
25.04.2012, 01:47 | #18 |
Пользователь
Регистрация: 26.02.2012
Сообщений: 20
|
Процесс 1. Мы компилируем наш проект с определенным ключом, этот ключ нам позволяет при каждом вызове функции перехватывать значения всех 7 регистров, мы их копируем в стек, потом вызываем функцию, делаем все что хотим с этими значениями и потом восстанавливаем наши значения , так вот я просто перехватываю с регистра вершину стека.
|
25.04.2012, 02:27 | #19 |
Форумчанин
Регистрация: 11.07.2010
Сообщений: 914
|
Не вижу, как это выглядит в реальности, но проделав следующий тест:
Код:
Если же так: Код:
Раз говорите, что перехватываете значения в вызове функции, то возможно конструктор копии еще не вызван. Хотя .... черт его знает PS. Может кто с асмом дружит, подскажет. Последний раз редактировалось EUGY; 25.04.2012 в 02:33. |
25.04.2012, 02:37 | #20 |
Пользователь
Регистрация: 26.02.2012
Сообщений: 20
|
Да все верно вы правы, в ESP лежит адрес оригинала, поэтому вы правильно предложили решение
string* pmystr = (string*) someptr; int len = pmystr->length(); Только вот предстоит разобраться почему же не получается получить адекватный размер, что же завтра покопают ещё. Спасибо огромное за помощь =) |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Класс string, выделение памяти | Стремящийся | Общие вопросы C/C++ | 1 | 17.03.2012 14:21 |
выделение памяти под объект | VIK_aka_TOR | Общие вопросы Delphi | 4 | 15.02.2012 19:20 |
Загрузить текст из file.txt в объект String | apromix | JavaScript, Ajax | 3 | 10.10.2011 09:06 |
Шаблоны - нужно создать объект класса abc в котором вместо aa использовался бы объект класса fff? | Farrel | Общие вопросы C/C++ | 2 | 13.11.2010 17:37 |
Как получить адрес String строки или преобразовать String | madboy4ik | Общие вопросы по Java, Java SE, Kotlin | 6 | 15.01.2010 11:57 |