Bit of a geeky post this, but it took us a while to find any reference to how you'd work out (in a program) whether a Vista PC's running the Aero theme or not.
It's important to Vixer because if Aero isn't running we can't capture video against a transparent background, so some of the loveliness of our user interface gets nibbled away. The same's true on XP too.
It's worth adding that Plan A wasn't to capture video by taking a snap-shot of the desktop (which is what we do now) - in theory there's a better mechanism that uses WPF's RenderTargetBitmap, but it leaks memory even in .NET 3.5SP1. Our friends at Microsoft tell us it's fixed for .NET 4.0 and we'll find out when we look at Windows 7.
So... what's different between two PC's, one running the Windows Vista Basic "color scheme" and one runnning the Windows Aero variant?
It's all down to registry settings - if you look at:
HKEY_CURRENT_USER\Software\Microsoft\Windows\DWM\
...the Composition and CompositionPolicy fields are set to 1 and 2 (respectively) for Aero, and both are zero otherwise.
If you want to know how to get at those from Managed Code, there's a great piece here.
Let us know if you plan to go to Windows 7 from the off - there are some features that will help us so we may do a Vixer that's specifically for Windows 7. It's only months away now and we're reading great things about it!
Monday, 27 July 2009
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment