This raises an interesting question....

Do you think MS will ever make a class to do this internal to the framework? OR are we stuck using the above unmanaged Win32API?