![]() |
eXeL@B —› Вопросы новичков —› Ошибка в скрипте (Olly srcipt) |
Посл.ответ | Сообщение |
|
Создано: 08 августа 2007 13:44 · Поправил: Verelex · Личное сообщение · #1 |
|
Создано: 08 августа 2007 15:36 · Личное сообщение · #2 |
|
Создано: 09 августа 2007 08:09 · Поправил: Verelex · Личное сообщение · #3 >BPCND адрес,"условие" // Условие должно быть помещено в кавычки А что делает, этот код (скрипт)? -просто ставит бряк если выполнено условие и продолжает выполнение программы или как? Или выполнение останавливается на этом бряке? переделал код так: start: bpcnd 0012E440, "[0012E440] == 00001D92" run но тоже не работает. Есть предположение, что он не понимает квадратные скобки. В примерах показан "eax == 0" т.е. прямое значение, а у меня по адресу. Но я точно знаю, что в ходе выполнения программы значение 00001D92 появляется по адресу 0012E440. Еще одно предположение: BPCND addr, cond - Set breakpoint on address addr with condition cond. Т.е. получается, что идет проверка "[0012E440] == 00001D92" и если успешно, ставится бряк, но эти инструкции уже выполнены, т.к. адрес используется в условии. Поэтому я решил использовать BPLCND addr, expr, cond - Sets logging breakpoint at address addr that logs expression expr if condition cond is true bplcnd 0012E440, "[0012E440]", "[0012E440] == 1D92" но в лог ничего не добавлялось, значит вообще все неверно. Как быть? >В тексте написано 1В92, а в скрипте 1D92. Это я поторопился и на англ. не переключил. (правильно 00001D92) Спасибо за ответ. ![]() |
|
Создано: 09 августа 2007 09:48 · Личное сообщение · #4 Я чайник, так что просьба не пинать, если что-то не так скажу. Бряки, которые ты ставишь подразумевают, что программа быдет выполняться по этим адресам. То есть такой бряк, какой ты ставишь можно поставить только в секции кода. А ты ставишь бряк на адреса в стэке и ждешь, пока пока программа будет их выполнять. Я бы попробовал поэкспериментировать с такими командами: bphws bpwm это бряки на запись в ячейку с определенным адресом. И проверять, что именно записывается. ![]() |
|
Создано: 09 августа 2007 15:16 · Личное сообщение · #5 |
|
Создано: 09 августа 2007 17:09 · Личное сообщение · #6 |
|
Создано: 10 августа 2007 07:16 · Личное сообщение · #7 |
|
Создано: 18 августа 2007 02:35 · Личное сообщение · #8 У меня такая проблема. В EAX хранится указатель на строку. Мне нужно данную строку вывести в лог. var x
такая команда помещает в x только 4 байта в обратном порядке ![]() И еще. Не подскажет ли кто нить где взять мануал на команды скриптовые. Английский вариант тоже подойдет. У меня ODBGScript 1.6. Там много чего нового, а вот даже синтаксиса команд негде узнать ![]() ![]() |
|
Создано: 18 августа 2007 13:01 · Личное сообщение · #9 |
|
Создано: 19 августа 2007 00:48 · Личное сообщение · #10 |
|
Создано: 19 августа 2007 10:36 · Личное сообщение · #11 |
|
Создано: 23 августа 2007 14:01 · Личное сообщение · #12 |
![]() |
eXeL@B —› Вопросы новичков —› Ошибка в скрипте (Olly srcipt) |