Sign in Join

Live chat for Free Pascal, Lazarus, Delphi and every Pascal programmer.

Catalog · How the catalog works
Anything · Lazarus or Delphi
Random projectRandom project

DirectDraw-API-Hooking

Hooking DirectDraw API to draw an overlay over DirectX applications using Windows GDI

View on GitHub

Member rating

No ratings yet.

Sign in to rate this project.

README

DirectDraw API Hooking

Hooking DirectX's DirectDraw API to draw an overlay using Windows GDI

Just some code I had lying around. Not many people still code in Delphi/Pascal, so I decided to just release this snippet. This project uses the DirectDraw API to find a pointer to the IDirectDrawSurface7 Blt() method, then uses CreateBackup() to dynamically allocate memory and create a backup of the method. Then it creates an API hook on the Blt() method and forwards all calls to myBlt(). This let's you access all device contexts for DirectDraw surfaces.

Usage

  1. Compile as a .dll file
  2. Use DLL Injection onto a process that uses the DirectDraw API

Notes

  • This code was tested on Windows XP x86
  • It was tested to compile on Delphi 7
  • If you encounter ANY errors, feel free to contact me!

Credits

License

MIT License