Since investigating screen capture techniques for Direct3D 9 applications a year ago I have wanted to look into hooking the Direct3D 9 API to utilise the much faster GetBackBuffer for my screen captures. Well here it is at last – a mostly managed C# solution providing easy and safe hooking of the Direct3D 9 API thanks to EasyHook, supporting both 32-bit and 64-bit.
Continue reading C# – Screen capture with Direct3D 9 API Hooks
Category Archives: Programming
C# – Enable / Disable DWM Composition (Aero)
As a follow up for C# – Screen capture with Direct3D, here is how to enable and disable composition (Aero) on Windows Vista and Windows 7.
Continue reading C# – Enable / Disable DWM Composition (Aero)
C# – Compile-time checking of property names for Data Bindings
Ever wished you could bind properties to your input controls without using literal strings to identify the property name?
Want the compiler to check the property names are valid at compile time rather than waiting until/if it’s found while testing?
Here is an example of how to determine the name of a property using the property name as compilable code via Lambda’s
(Updated 9th Oct 2009 to support binding paths that extend beyond a first-level property)
Continue reading C# – Compile-time checking of property names for Data Bindings
C# – BinaryFormatter.Deserialize is “Unable to find assembly”
While testing a SQL CLR procedure recently I came across an issue with the binary formatter deserialization failing because it could not find the assembly for the type (even though the type is within the same assembly as the deserialization code).
Continue reading C# – BinaryFormatter.Deserialize is “Unable to find assembly”
C# – Screen capture with Vista DWM (Shared Direct3D Surface)
When I was researching for this article, I noticed some passing references to the Vista DWM (Desktop Window Manager) and the ability to use it to capture images of windows — DWM is the technology behind Windows Aero and its window switching features like Flip3D. I filed this away as something to look into at a later date.
Continue reading C# – Screen capture with Vista DWM (Shared Direct3D Surface)
C# – Screen capture with Direct3D
After finally installing Vista Home Premium at home, I found that a C# utility I had created for capturing a region of the screen suddenly stopped working reliably for windowed Direct3D applications.
ASP.NET 2.0 page and control life-cycle diagram
I recently had to begin working on some ASP.NET development, specifically composite controls for web forms and SharePoint custom fields and web parts, and not knowing a great deal about ASP.NET (or SharePoint for that matter), I set out into Google land to discover all I could about the ASP.NET page request and how my snazzy new controls would have to fit into it.
Continue reading ASP.NET 2.0 page and control life-cycle diagram