· Начало · Отвђтить · Статистика · Поиск · FAQ · Правила · Установки · Язык · Выход · WASM.RU · Noir.Ru ·

 WASM Phorum —› WASM.WIN32 —› hook функций (модификация пролога)

<< . 1 . 2 .

Посл.отвђт Сообщенiе


Дата: Май 5, 2004 23:25:11

rst
потому, что можешь напоростья на поток, который будет как раз на том участке, куда ты пишешь

причем тут поток? это делаетса при загрузки процесса, не каких дополнительных потоков (тредов?) пока ещё не существует. всё это на NT, так что о чужих процессах можно не волноватся


Дата: Май 6, 2004 10:32:03



kernel32!FreeLibrary:
stdcall [VirtualProtect],[FreeLibrary],5,PAGE_EXECUTE_READWRITE,OFFSET dwOldFlags
stdcall memcpy,[FreeLibrary],OFFSET FreeLibraryAold,5
; call
stdcall [FreeLibrary],[esp+04h]
pusheax
.quit:stdcall hook,[FreeLibrary],OFFSET kernel32!FreeLibrary
popeax
retn04h

Как я понял здесь снимается хук при заходе в FreeLibrary
а при выходе из FreeLibrary хук восстанавливается.
Правильно?


Дата: Май 7, 2004 06:42:20

да


Дата: Май 7, 2004 11:20:35

Ну а теперь представь, что у тебя эта функция вызывается приложением из 20 потоков, и причем довольно часто. Где гарантия, что не произойдет вызов, когда ты её патчишь (пишешь в пролог данные)?
Чтоб более детально понять что я имею ввиду - почитай про то, зачем нужна InterlockedIncriment


Дата: Май 7, 2004 18:56:03

нах... работает и всё


Дата: Май 7, 2004 19:05:26

дык а кто тебя заставляет че-т менять?
тебе просто сказали, что это не совсем правильно и все.
Че нах.. то посылать без причины?


Дата: Май 8, 2004 03:20:28

я не тебя посылаю, а предложение которого, как вы говорите, не было
чё с ума сходить, это все волишь интернет

<< . 1 . 2 .


Powered by miniBB 1.6 © 2001-2002
Время загрузки страницы (сек.): 0.074