well, I've just tried this method you describe... problem is it shows me non-gui applications as well, so if I run eg cmd.exe it will fall.
2009/7/16 Processor Devil <[email protected]> > ok, thx a lot :) > > 2009/7/15 Peter Smith <[email protected]> > > >> For a non confusing answer: No. There is no way to set the opacity of >> all currently running applications to any value. 'Running >> applications' don't have opacity as a property. Forms do. UIElements >> do. Various graphic elements do. >> >> Now, if you wanted to, say, set all visible forms to 80% opacity.... >> >> foreach (Process process in processlist) >> { >> IntPtr hWnd = process.MainWindowHandle; >> if (!hWnd.Equals(IntPtr.Zero)) // zero means either no window or >> window not visible >> { >> System.Windows.Forms.Form processForm; >> // do something to find the Form object of the window >> processForm.Opacity = 0.8; >> } >> } >> >> >> Problem is, I dunno what the 'do something' is, nor can I easily find >> that out from looking around quickly. I know I can generate a Graphics >> object from an hWnd safely... :) And all the REST is safe. :) >> > >
