.net c# interop outlook winapi How to pass a COM object as an IntPtr to a P/Invoke method? Sep 20, 2012 See the question and my original answer on StackOverflow You want to use the Marshal.GetIUnknownForObject Method.