Легенда:
новое сообщение
закрытая нитка
новое сообщение
в закрытой нитке
старое сообщение
|
- Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
- Новичкам также крайне полезно ознакомиться с данным документом.
|
А еще я обычно указываю Address не в качестве параметра, а... 20.02.04 01:05 Число просмотров: 1634
Автор: :-) <:-)> Статус: Elderman
|
А еще я обычно указываю Address не в качестве параметра, а получаю его внутри своей функции так:
Address = ScreenEA();
Это чтобы патчить с того места, где установлен курсор.
Кстати, функция, аналогичная твоей (но более простая) идет вместе с IDA (в версии 4.3, например, есть), и лежит в файле f_read.idc:
static f_read(from_file, to_offs)
|
<hacking>
|
Reversing: Полезная функция для IDA 19.02.04 18:25
Автор: SL Статус: Незарегистрированный пользователь
|
Простая, но очень полезная функция. Я ее использую, если, например, нужно распаковать или расшифровать файл, при этом данные могут попадать в виртуальные сегменты...
static patchb(fname,offset,bytes,address)
{
auto i, h;
h = fopen(fname, "rb");
if (h==0) Message("Cannot open file");
else
{
fseek(h, offset, 0);
for (i = 0; i < bytes; i = i + 1)
{
PatchByte(address, fgetc(h));
address = address + 1;
}
fclose(h);
}
}
fname - полный путь к файлу
offset - смещение
bytes - кол-во байт
address - адрес, с которого начинается патч
|
|
А еще я обычно указываю Address не в качестве параметра, а... 20.02.04 01:05
Автор: :-) <:-)> Статус: Elderman
|
А еще я обычно указываю Address не в качестве параметра, а получаю его внутри своей функции так:
Address = ScreenEA();
Это чтобы патчить с того места, где установлен курсор.
Кстати, функция, аналогичная твоей (но более простая) идет вместе с IDA (в версии 4.3, например, есть), и лежит в файле f_read.idc:
static f_read(from_file, to_offs)
|
| |
Хорошая идея (насчет курсора). Спасибо. 20.02.04 11:33
Автор: SL Статус: Незарегистрированный пользователь
|
|
|
|