Сейчас на форуме: _MBK_, ManHunter, Magister Yoda, rtsgreg1989 (+9 невидимых)

 eXeL@B —› Основной форум —› addr в SoftIce
Посл.ответ Сообщение

Ранг: 11.0 (новичок)
Активность: 0=0
Статус: Участник

Создано: 17 июля 2005 01:59
· Личное сообщение · #1

Я, мягко говоря, новенький в этом, но всё-таки разбираться надо.
У меня такая проблема:
При выборе процесса в SoftIce (addr) всё, вроде бы, в порядке - проверка показывает, что активный процесс тот, который я выбрал. Но вот стоит только скрыть окно(F5, CTRL+D), процесс меняется на что-то типа Idle. Не обязательно даже скрывать окно SI, при попытке отладки через F8 процесс автоматически переключается на другой.

Прошу мне объяснить причину, кто сталкивался. Может, я то-то не так делаю. Только просьба, не надо критики, мне нужно докопаться в сути вопроса, а не перебирать родственников до 7 колена.

Заранее спасибо.




Ранг: 221.8 (наставник)
Активность: 0.150
Статус: Участник

Создано: 17 июля 2005 02:43
· Личное сообщение · #2

Ну это совершенно естественно... прога тоже что то подгружает другие dll например. Чего ты хочешь отыскать?




Ранг: 78.6 (постоянный)
Активность: 0.030
Статус: Участник

Создано: 17 июля 2005 02:44
· Личное сообщение · #3

а почему ты думаешь что он переключается на другой?



Ранг: 156.1 (ветеран), 5thx
Активность: 0.020
Статус: Участник
Капрал

Создано: 17 июля 2005 10:34
· Личное сообщение · #4

aik21 пишет:
При выборе процесса в SoftIce (addr)

Это лишь позволяет ставить брекпоинты на конкретный адрес в выбранном контексте. При нажатии Ф8 происходит выполнении того приложения в котором САЙС остановился.



Ранг: 40.9 (посетитель)
Активность: 0.020
Статус: Участник
diProtector Software

Создано: 17 июля 2005 10:36
· Личное сообщение · #5

aik21
после F5 понятно чего меняется - софтайс вываливается в текущий процесс, а на всех компах процесс Idle исполняется 90% времени, т.е. 90 раз из 100 сайс вывалится именно в него. А после F8 - ты уверен что уже брякнулся в нужном тебе процессе (т.е. EIP указывает в контекст нужного процесса), а не просто поменял его посредством addr?



Ранг: 11.0 (новичок)
Активность: 0=0
Статус: Участник

Создано: 17 июля 2005 12:38
· Личное сообщение · #6

Broken Sword пишет:
после F8 - ты уверен что уже брякнулся в нужном тебе процессе (т.е. EIP указывает в контекст нужного процесса), а не просто поменял его посредством addr?

Можно здесь поподробнее?

freeExec пишет:
При нажатии Ф8 происходит выполнении того приложения в котором САЙС остановился.

Каким обоазом можно это указать?



Ранг: 186.8 (ветеран)
Активность: 0.040
Статус: Участник

Создано: 18 июля 2005 12:35
· Личное сообщение · #7

freeExec написал абсолютно правильно... Софтайс просто переключается на нужный тебе контекст лишь для того, чтобы ты мог посмотреть на данные в адресном пространстве нужного тебе процесса, да бряки поставить. Когда же ты пытаешься разрешить системе продолжить работу (неважно, каким способом) система возобновляет выполнение потока, который выполнялся до твоего выхода в айс. Айс ничего не делает конкретно с планировщиком процессов и потоков...



Ранг: 11.0 (новичок)
Активность: 0=0
Статус: Участник

Создано: 18 июля 2005 17:13
· Личное сообщение · #8

Спасибо. Вопрос исчерпан.


 eXeL@B —› Основной форум —› addr в SoftIce
Эта тема закрыта. Ответы больше не принимаются.
   Для печати Для печати