开发者

Is there any way to hook whole drawing functions for a process under windows?

开发者 https://www.devze.com 2023-03-22 02:15 出处:网络
I want to capture everything what a window displays. On the other hand, it will be very nice if that window doesn\'t actually display nothing on the screen. How? The process will call drawing function

I want to capture everything what a window displays. On the other hand, it will be very nice if that window doesn't actually display nothing on the screen. How? The process will call drawing functions, my function will hook and draw it to somewhere else (for example into a bitmap file) and return without actually drawing on screen.

What I know is, in Windows NT architecture开发者_如何学编程, every thread has a system call table and you can change system call table of a single thread (or just set it in the beginning) to your functions. By only changing drawing api (GDI?) (i am not sure how I would survive if application uses directx rendering but maybe there is a way) i feel that I can do it. Can I? What should I do if the application uses DirectX rendering?

Thanks in advance,

Ali Veli


I ended up hooking only CreateDC-like functions, made it always creating a memory device context and letting all other functions draw on that memory DC.

0

精彩评论

暂无评论...
验证码 换一张
取 消