I'm currently planning out a project involving creating a shell replacement for Windows (based on Blackbox, bblean specifically). However I wish to leverage the power of .NET to do so. Many of the API calls I'll need are housed within the User32 library. I can of course use P/Invoke and create a static class to handle this for me.
However, a lot of this functionality is already available in the .NET framework, specifically in the System.Management namespace for dealing with processes and active windows, etc. Some of it seems to be missing, for example the SetForegroundWindow functions.
Are you aware of anything built into the .NET framework that already provides this functionality, or will I need to take the P/Invoke route?