Учимся писать патчи : Патчестроение : Форум

Страница 168 из 180: « 1 ... 164 165 166 167 [168] 169 170 171 172 ... 180 »

 D3mon:
04.07.11, 00:20
 Ррребят, подскажите, пожалуйста!
Можно ли по указателю на буку определить, существует она или нет?
Если да, то как? :oops:

 den_po:
04.07.11, 00:30
 D3mon,
Код: 

int CMyBook::FindBookExCB_Book( BOOK* book , int* param )
{
    return book == (BOOK*)param;
}


...

//book - указатель на книгу
    bool exists = NULL!=FindBookEx( FindBookExCB_Book, (int*) book );



 D3mon:
04.07.11, 00:56
 den_po, Спасибо!
СИ - это хорошо )
Но как это на АСМе выглядеть будет?

Код: 
    ADR    R0, cmp_proc
    ADD    R0, 1
    MOV    R1, R4
    BL    _FindBookEx
    CMP    R0, 0
    BNE    exist
notexist:
...
exist:
...


cmp_proc:
    PUSH    {LR}
    CMP    R0, R1
    BEQ    _yes
    MOV    R0, 0
    B    exit
_yes:
    MOV    R0, 1
exit:
    POP    {PC}


 den_po:
04.07.11, 01:01
 D3mon, ну как-то так, да

 Therion:
04.07.11, 02:06
 D3mon, а в чём логика? Получить указатель можна только с существующей книги. При пересоздании указатели меняются. Выразизь конкретней

 D3mon:
04.07.11, 02:24
 Therion, давно выкладывал патч на сворачивание текущей буки удержанием качельки громкости вниз и восстановление этой свёрнутой буки удержанием качельки громкости вверх.
Указатель на буку сохраняется и читается через get/set_envp.
Суть вот в чём:
Если я сверну книгу, потом убью её через БМ, и попытаюсь восстановить - произойдёт ребут!
Вот мне и нужно проверить, существует ли данаая бука или нет. Если да, то восстановить, ну и соответственно если нет, то что-то другое (вывести сообщение или вообще ничего не сделать)

 Therion:
04.07.11, 09:14
 D3mon, сровняй сохранённый указатель на книгу с 0 (нолём). Как в findbook, возвращает указатель на книгу или 0 если книги нет

 den_po:
04.07.11, 09:21
 Therion, чо сказал.
указатель останется указателем и после убийства книги. да и ответ я ему уже дал.

 a6b6:
21.07.11, 14:10
 Привет народ, у меня вот такой вопрос че вводить
IDA Pro Advanced (64-bit)
Rom start address 0х801080000 или 0х10000000
и в программе patsearchnt .
телефон w595 R3eg004

[ Редактировано a7b7 в 21.7.11 21:15 ]

Прикрепленный к сообщению файл:

IDA__Pro_Advanced_(64-bit).JPG IDA__Pro_Advanced_(64-bit).JPG (57.18 kb; 102 hits) Скачать файл
patsearchnt.JPG patsearchnt.JPG (53.08 kb; 103 hits) Скачать файл

 Vov4ик:
21.07.11, 14:39
 a7b7, на А2 надо открывать *.схс, а не *.mbn или *.raw
А лучше почитай тему портирование замейновых патчей а2 и не задавай глупых вопросов
Страница 168 из 180: « 1 ... 164 165 166 167 [168] 169 170 171 172 ... 180 »

URL этой темы:
https://mobilefree.justdanpo.ru/newbb_plus/viewtopic.php?topic_id=965&start=1670

© 2005-2018 supertrubka.org