Sorry I don't; not a big fan of .NET so avoid it whenever possible. I'm sure there's some framework class somewhere that does it. But you should be able to call the APIs directly if not; it's just a question of adapting the syntax and substituting language features where appropriate-- e.g. you wouldn't need the vtableswap/function pointers because c# will let you implement a COM interface with a return value without them.