CCW COM and Parameters

Giganews Newsgroups
Subject: CCW COM and Parameters
Posted by:  James (baoduraspect@community.nospam)
Date: Sat, 25 Apr 2009

I am writing a component in C# which is a COM Callable Wrapper.  Some of the
methods pass structs across COM.  My question is, how does COM pass
parameters such as structs?  I know that C# passes structs by value.  The
struct data being passed from the Win32 client is never going to be modified,
so I would like to prevent making a copy of the struct across the COM
barrier.  In C# The struct is being passed by reference (added ref keyword to
parameter) since I don't want to make a copy there either.  I'm going through
enough layers already and I would prefer not to be making multiple copies of
a struct every time it is passed as a parameter.