How to get the updated region as an image in XP screen?

Please discuss general Delphi programming topics here.

How to get the updated region as an image in XP screen?

Postby actalk » December 10th, 2008, 6:00 pm

Hello !

Although I convert screenshots to jpeg, size of each screenshot is at least 120 K.
I want to use litle images Instead of full screenshot.
I think, I need a kind of listener. This listener will follow updated regions (updated part of the screen) in windows xp.

May be a hook procedure or api...any idea, clue ...

Thanks

a.c.
actalk
Junior Member
Junior Member
 
Posts: 29
Joined: October 5th, 2007, 3:56 pm

Re: How to get the updated region as an image in XP screen?

Postby mathgod » December 11th, 2008, 3:57 pm

It sounds like you are looking to create a modified screen capture program. I wrote a screen capture program recently based in part on the Delphi code on Bitwise Magazine.

http://www.bitwisemag.com/copy/archives/archives.html

I hope this helps.

Don
User avatar
mathgod
Junior Member
Junior Member
 
Posts: 35
Joined: December 15th, 2007, 4:36 pm
Location: Middle of New Mexico, USA

Re: How to get the updated region as an image in XP screen?

Postby actalk » December 11th, 2008, 6:00 pm

Thank you "mathgod".

I'm examining your ScreenGrab programs.

I send screenshots of some computers to the viewer PC over network - like remote administrator.

I wonder How I can access only painted (refreshed) part of the screen, not full screen (to optimize it).

Now I don't know which part of the desktop repainted in the other PCs.
I think Windows informs us about the updated regions.
actalk
Junior Member
Junior Member
 
Posts: 29
Joined: October 5th, 2007, 3:56 pm

Re: How to get the updated region as an image in XP screen?

Postby mathgod » December 11th, 2008, 9:18 pm

I just want to make clear that I did not author any of the code on Bitwise Magazine. I simply perused the code, compiled and ran the demos, and came up with my own idea for a screen capture program. As tempting as it is for me to post a link to the install file of my work, I don't think it is appropriate since you are looking for something that my application does not do.

Don
User avatar
mathgod
Junior Member
Junior Member
 
Posts: 35
Joined: December 15th, 2007, 4:36 pm
Location: Middle of New Mexico, USA

Re: How to get the updated region as an image in XP screen?

Postby mathgod » December 11th, 2008, 9:25 pm

Zarko has a lot of good Delphi code.

http://delphi.about.com/b/2005/05/05/do ... delphi.htm
User avatar
mathgod
Junior Member
Junior Member
 
Posts: 35
Joined: December 15th, 2007, 4:36 pm
Location: Middle of New Mexico, USA

Re: How to get the updated region as an image in XP screen?

Postby Kambiz » December 12th, 2008, 10:37 am

Install a message hook (SetWindowsHookEx) for WH_CALLWNDPROCRET hook, and monitor WM_PAINT and WM_NCPAINT messages to get the window handle and its updated rectangle. The hook must be in a separate DLL.

If there are more than one Remote Viewer on the network, to reduce network traffic and save some CPU time on the sender machine, use Multicast protocol to broadcast the updated screenshots on the network.
Kambiz
User avatar
Kambiz
Administrator
Administrator
 
Posts: 2429
Joined: March 7th, 2003, 7:10 pm


Return to Delphi Programming

Who is online

Users browsing this forum: No registered users and 3 guests

cron