Сейчас на форуме: user99, _MBK_, ManHunter, Magister Yoda, rtsgreg1989 (+9 невидимых) |
![]() |
eXeL@B —› Основной форум —› Вопрос по API |
<< . 1 . 2 . 3 . >> |
Посл.ответ | Сообщение |
|
Создано: 08 октября 2005 08:11 · Личное сообщение · #1 |
|
Создано: 12 октября 2005 13:03 · Личное сообщение · #2 Stranger Да, будь внимательнее, я же писал, что bpx устанавливает бряк только в исполняемом модуле, а bp уже в системных либах. К тому же, возможны другие варианты мессажбокса (MessageBoxW, MessageBoxIndirectA,MessageBoxIndirectW) ----- Флэш, ява, дотнет - на завтрак, обед и ужин. Unity3D на закуску. ![]() |
|
Создано: 14 октября 2005 04:31 · Личное сообщение · #3 |
|
Создано: 14 октября 2005 04:41 · Личное сообщение · #4 |
|
Создано: 14 октября 2005 17:40 · Личное сообщение · #5 |
|
Создано: 14 октября 2005 19:09 · Личное сообщение · #6 |
|
Создано: 14 октября 2005 20:09 · Личное сообщение · #7 |
|
Создано: 15 октября 2005 00:18 · Личное сообщение · #8 Кто-нибудь подскажет для чего нужна API-функция InterlockedExchange()? Только не надо общих ответов как в справочнике, типа "обменивает пару 32-битных значений". Она защищает переменную от изменения другим процессом??? Или я что-то не так понял. В моей ситуации она используется при проверке метки тома, после GetVolumeInformation. ![]() |
|
Создано: 15 октября 2005 11:29 · Личное сообщение · #9 |
|
Создано: 15 октября 2005 16:42 · Поправил: Stranger · Личное сообщение · #10 |
|
Создано: 15 октября 2005 23:02 · Личное сообщение · #11 Stranger Во-первых, еще раз повторяю, ты можешь отлаживать библиотеку отдельно, просто кинув ее на форму Ольки, например, или, если хочешь, чтобы при переходе на DLL ты все еще имел возможность отлаживать прогу, попробуй в настройках Ольки поставить (Events) Break on new module (DLL). ----- Флэш, ява, дотнет - на завтрак, обед и ужин. Unity3D на закуску. ![]() |
|
Создано: 16 октября 2005 18:56 · Личное сообщение · #12 |
|
Создано: 16 октября 2005 19:08 · Личное сообщение · #13 |
|
Создано: 16 октября 2005 20:40 · Личное сообщение · #14 |
|
Создано: 16 октября 2005 21:11 · Личное сообщение · #15 |
|
Создано: 16 октября 2005 21:51 · Личное сообщение · #16 |
|
Создано: 16 октября 2005 21:54 · Личное сообщение · #17 |
|
Создано: 16 октября 2005 22:52 · Личное сообщение · #18 |
|
Создано: 16 октября 2005 22:54 · Поправил: Stranger · Личное сообщение · #19 |
|
Создано: 16 октября 2005 23:07 · Личное сообщение · #20 |
|
Создано: 17 октября 2005 16:59 · Личное сообщение · #21 |
|
Создано: 17 октября 2005 17:26 · Личное сообщение · #22 |
|
Создано: 17 октября 2005 17:40 · Личное сообщение · #23 |
|
Создано: 18 октября 2005 19:38 · Личное сообщение · #24 Тут некоторые умные люди расхваливали мне Ольку и настоятельно советовали попробовать ее на деле. НО!!! Когда я попробовал исследовать с ее помощью проги, ОКАЗАЛОСЬ, что бряки в ней срабатывают через РАЗ(и на вызов API-функций, и на memory access). А также бывает, что вызовы функций иногда не комментируются в удобной форме и даже не считаются за вызовы (push esi- адрес API-ф.; call esi), хотя в этом месте надо брякнуть. Внимание, вопрос: Я использую не ту версию Ольки(1.10)? Не установил какой-то Update? На нее воздействует sice? Или еще какой-то Bug? ![]() |
|
Создано: 18 октября 2005 20:10 · Личное сообщение · #25 Stranger ïèøåò: ОКАЗАЛОСЬ, что бряки в ней срабатывают через РАЗ(и на вызов API-функций, и на memory access). А также бывает, что вызовы функций иногда не комментируются в удобной форме и даже не считаются за вызовы (push esi- адрес API-ф.; call esi), хотя в этом месте надо брякнуть. Не надо голословных утверждений - давай линк на небольшую прогу и конкретные примеры срабатывания бряка "через раз". ![]() |
|
Создано: 18 октября 2005 20:50 · Личное сообщение · #26 Stranger пишет: ОКАЗАЛОСЬ, что бряки в ней срабатывают через РАЗ А может ты все-таки попутал BP и BPX? Если ставить бряк в начале самой АПИ, то через раз не может срабатывать (ну разве-что если ты там прот какой-то копаешь). А вот если на вызовы в самой проге(BPX), то может. Надо ставить BP, а потом Execute till return (ctrl-F9), и окажешся как раз в том месте, откуда был вызов, в том числе и Call esi. А вообще-то правильно Ara пишет: давай линк на небольшую прогу и конкретные примеры срабатывания бряка "через раз". ----- Research is my purpose ![]() |
|
Создано: 18 октября 2005 20:56 · Личное сообщение · #27 Stranger, приятель, не спиши. Поверь, по части внятности и читабельности кода, Olly куда как лучше. Главные преимущества Оли (то чего мне в SI не хватает): 0. Комментарии к параметрам API. 1. Удобная навигация по коду. 2. Подсветка. 3. Буфер обмена. 4. Наглядность стека. 5. Куча мелочей, которых просто не упомнишь И естественно плаги. Вот попробуй, найди в SI обращения к конкретной строчке кода. > бряки в ней срабатывают через РАЗ(и на вызов API-функций, и на memory access). Если, допустим, доступ к памяти происходит из другого модуля, то ставь hardware bp. И ещё раз, не путай в cmdbar bp и bpx. > А также бывает, что вызовы функций иногда не комментируются в удобной форме Ну, ну. А SoftIce в этом плане лучше? =))). Вот уж по части авто-комментариев, Олька на голову выше. Stranger пишет: хотя в этом месте надо брякнуть. Ну, я же сказал. Ставишь CommandBar, пишешь bp и получаешь бряк на первую команду функции. Ты вообще читать умеешь? Так прочти help от Olly (русский перевод в разделе скачать). ----- Всем привет, я вернулся ![]() |
|
Создано: 18 октября 2005 21:18 · Личное сообщение · #28 Да умею я читать, умею. То, что Олька намного удобнее я заметил. bp и bpx я вообще не использовал. Просто выбрал в списке "Intermodular calls" нужную мне функцию и задал бряк на каждом ее вызове. В первый раз, когда я енто сделал все работало Ok(просто супер). Но потом (по-моему поставил еще один бряк вручную(double click)) все стало работать по-другому(как я уже описывал). Выбирал и анализ кода, и бряки все заново устанавливал по выше описаной схеме - бестоляр. Такие вещи не очень радуют, в то время как сайсе все срабатывает железно(если уж поставил бряк - так поставил!). А прога - классический training flashget. Функция RegQueryValueExA . ![]() |
|
Создано: 18 октября 2005 21:41 · Личное сообщение · #29 |
|
Создано: 19 октября 2005 11:21 · Личное сообщение · #30 |
|
Создано: 19 октября 2005 12:33 · Личное сообщение · #31 |
<< . 1 . 2 . 3 . >> |
![]() |
eXeL@B —› Основной форум —› Вопрос по API |