visual c++ - Capture Hidden window with aero effects -
i trying capture windows hidden behind application. using windows 7 , vc++. have tried printwindow()
function draws both non-client , client area of hidden window, captured window in device context doesn't show desktop composition effects(aero effects). instead shows captured window windows 7 basic theme.
i have tried getwindowdc()
retrive dc of hidden window, , bitblt()
memory dc captured window doesn't show non-client area (caption, close button, minimize button etc) correctly.
anybody faced issue? please help.
click link below. leads msdn site lists existing windows functions ever of history since windows 95 windows 8 (from period microsoft started windows until present). shows old windows functions of first windows , new windows functions added new windows.
http://msdn.microsoft.com/en-us/library/windows/desktop/ff468919(v=vs.85).aspx
anyway follow site. see name of each function link. click of them interested. each link there leads msdn site explains basics knowledge must know function before using it, want learn more. function does, purpose, parameters , how use each one, flags, parameters types, return value , @ last remarks section shed more light , gives tips selected function.
of course, don't have read of them. find in list necessary functions fit needs. functions solve problem , answer question posted.
by way, read post, , think found in list necessary functions want do, list them below, , in 1 sentence each need:
animatewindow - enables produce special effects when showing or hiding windows. there 4 types of animation: roll, slide, collapse or expand, , alpha-blended fade.
flashwindow - flashes specified window 1 time. not change active state of window.
flashwindowex - flashes specified window specified number of times. not change active state of window.
use these functions achieve aero effects want.
setwindowpos - changes size, position, , z order of child, pop-up, or top-level window. these windows ordered according appearance on screen. topmost window receives highest rank , first window in z order.
use function show hidden windows on top side (above other windows) , on screen front of you. operating system automatically draw both non-client , client area of these windows without using gdi, draw , paint functions yourself.
if want these windows return previous state (where hidden), save state getwindowplacement function , later call setwindowplacement bring them hidden state. can try getwindowrect , setwindowpos instead achieve same goal.
i think interested in getwindowtheme , setwindowtheme functions , draw theme functions (backgroundex, edge, icon, text, textex).
there more theme functions. find in msdn , in other sites on web.
Comments
Post a Comment