The IMarshal interface contains the following methods:
GetUnmarshalClass returns the CLSID of unmarshaling code.
GetMarshalSizeMax returns size of the buffer needed during marshaling.
MarshalInterface marshals an interface pointer.
UnmarshalInterface unmarshals an interface pointer.
ReleaseMarshalData destroys a marshaled data packet.
DisconnectObject severs all connections.