Сабж. Пробовал в реестре ключ "MoveImages" и флаг IMAGE_DLL_CHARACTERISTICS_DYNAMIC_BASE, но не помогает. Обгуглися, но ничего не нашел, вероятно и нету публичного решения. Нужно для отлдаки под IDA, т.к. образ дллки большой, то каждый раз при отладке rebasing идет нереально долго, до 3-5 минут.
Раз релоки используются, значит это необходимо. Но если уж очень хочется можно сбросить флаг присутствия релоков в PE заголовке. И всё равно я думаю что тормоза не из-за них, код настройки релоков достаточно прост и не может занимать столько времени, если, конечно, вы не используете пошаговый трейсинг.
скорее всего у длл базовый адрес стандартный и ребэйз осуществляется каждый раз. Ребазируйте длл на другой предпочтительный адрес и сбросьте флаг IMAGE_DLL_CHARACTERISTICS_DYNAMIC_BASE. >>Но если уж очень хочется можно сбросить флаг присутствия релоков в PE заголовке. это не вариант для длл, см. выше почему. >> И всё равно я думаю что тормоза не из-за них, код настройки релоков достаточно прост и не может занимать столько времени, если, конечно, вы не используете пошаговый трейсинг. трейсинг при ребазировании не причем. Там какието внутрении тормоза движка. Ильфак опять проустался.
izl3sa, да пробовал ребазировать, нифига, на xpюше то нормально, всегда грузится по одинаковому адресу, а на семерке всегда рандом. Ну можно добиться чтобы через n-ое количество запусков был предпочтительный адрес, а потом атачиться из иды к процессу, но это изврат)) UPD упс, попробовал сейчас ребейз сделать на более старший адрес, вроде все ок, спасибо)