Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

WinAPI [D6, D7, WinXP]


Denissoft ©   (2006-07-12 18:44:00) 

Как перехватить winapi функцию и заменить результаты ее выполнения, например программа просит GetVolumeInformation про диск C: а получает инфу про D:
И как вообще вывести список всех обращений приложения к WinAPI


GrayFace   (2006-07-14 11:06:00) [1]

> tesseract
Неправильно говоришь, неправильно.
1) Классичесий подход - изменение Import Table.
2) Писать в секцию кода можно, во всяком случае в exe.

Denissoft ©   (12.07.06 18:44)
программа просит GetVolumeInformation про диск C: а получает инфу про D:

и
заменить результаты ее выполнения
- это абсолютно разные вещи. Заменить аргументы функции гораздо проще, чем результат.
В общем, внедрение и перехват см. http://mmp.flat-design.ru/rihter.zip

P.S. Однако, в "Начинающим" зря переместили.


tesseract   (2006-07-13 10:01:00) [2]

> Это еще почему???

Может потому, что по умолчанию там запрещена запись в секцию кода?


Elen   (2006-07-13 07:48:00) [3]


> т.е на SP2 не сработает.

Это еще почему???


tesseract   (2006-07-12 19:17:00) [4]

> И как вообще вывести список всех обращений приложения к
> WinAPI

ApiSpy вроде существует.

Перехват осуществляется внедрением кода в системные DLL - т.е на SP2 не сработает.


Наверх

Титульная страница Поиск, карта сайта Написать письмо