Модераторы: Daevaorn
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Изменить адрес загрузки exe-файла 
:(
    Опции темы
GreenPiece
Дата 27.1.2011, 04:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 18
Регистрация: 25.1.2011

Репутация: нет
Всего: нет



Добрый день.
Студия 2010, есть такая проблемка. Нужно фиксировать адрес загрузки файла (imagebase), но вот как это сделать?
#pragma comment(linker,"/base:0x00400000") не работает, при просмотре в отладчике все равно каждый раз разные адреса.
Как же это сделать?
PM MAIL   Вверх
Dem_max
Дата 27.1.2011, 08:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1780
Регистрация: 12.4.2007

Репутация: 4
Всего: 39



в опциях компилятора не пробовал смотреть ?


--------------------
Американские программисты долго не могли понять, почему русские при зависании Windоws всё время повторяют "Твой зайка написал" ("Yоur bunnу wrоte")
PM MAIL   Вверх
xvr
Дата 27.1.2011, 13:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 7046
Регистрация: 28.8.2007
Где: Дублин, Ирландия

Репутация: 60
Всего: 223



Цитата(GreenPiece @  27.1.2011,  04:01 Найти цитируемый пост)
при просмотре в отладчике все равно каждый раз разные адреса
Это надо очень постараться, что бы такого достигнуть. Исполняемые файлы всегда грузятся на один и тот же адрес. DLL могут быть перебазированы, причем в любом случае. Запретить это нельзя.


PM MAIL   Вверх
borisbn
Дата 27.1.2011, 13:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 4875
Регистрация: 6.2.2010
Где: Ростов-на-Дону

Репутация: 22
Всего: 135



Цитата(GreenPiece @  27.1.2011,  04:01 Найти цитируемый пост)
при просмотре в отладчике все равно каждый раз разные адреса


хмммм... странно. у меня при запуске как из студии (правда 2008, но думаю дело не в этом), так и без неё на адрес одной и той же переменной выдаётся одно и то же. Собственно говоря, так и должно быть


--------------------
Женщины отличаются от программистов тем, что у них чары состоят из стрингов
PM MAIL Jabber   Вверх
GreenPiece
Дата 27.1.2011, 18:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 18
Регистрация: 25.1.2011

Репутация: нет
Всего: нет



Добрый день.
Я уже почти ничего не понимаю. Создаю обычное приложение в студии, загружаю его в OllyDbg, и вижу каждый раз разные стартовые адреса, вот сейчас, например, 00990000, потом 00230000. В файле ничего трогаю. Студия 2010, Win Vista.
Я понимаю, в принципе, что должно быть так, как Вы говорите, в случае исполняемых файлов, один и тот же адрес, вот в C++ Builder, например, так и есть. Не могу понять, почему у меня в студии это не так...
PM MAIL   Вверх
borisbn
Дата 27.1.2011, 18:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 4875
Регистрация: 6.2.2010
Где: Ростов-на-Дону

Репутация: 22
Всего: 135



Цитата(GreenPiece @  27.1.2011,  18:18 Найти цитируемый пост)
загружаю его в OllyDbg

что за зверь ? м.б. в нём и проблема ? почему не пользуешь встроенный в студию ?


--------------------
Женщины отличаются от программистов тем, что у них чары состоят из стрингов
PM MAIL Jabber   Вверх
GreenPiece
Дата 27.1.2011, 19:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 18
Регистрация: 25.1.2011

Репутация: нет
Всего: нет



OllyDbg - отличный отладчик, в нем гораздо проще разбираться, что к чему в программках, чем в встроенном в студию отладчике. Не, думаю, проблема не в нем, потому что до этого кучу приложений отлаживал в нем, и проблем не было никаких smile 
PM MAIL   Вверх
GreenPiece
Дата 28.1.2011, 01:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 18
Регистрация: 25.1.2011

Репутация: нет
Всего: нет



Ура!
Разобрался, в чем суть. А дело - в ASLR и опции компоновщика /dynamicbase, ну и Висте, конечно же. То есть если б я запускал прожку на ХР, то и не заметил бы никакого подвоха. Убирая эту опцию, получаем исполняемый файл со статической imagebase, неважно, способна ли система к ASLR или нет.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0532 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.