| In this chapter we studied mixing managed and unmanaged code running under Windows. We saw how to call legacy COM components from within the managed .NET environment using a Runtime Callable Wrapper, or RCW. We also looked at the use of a COM Callable Wrapper (CCW) to enable a COM client to call a .NET component. Finally, we looked at using Platform Invocation Services (PInvoke), and saw how automatic marshaling is provided for both in and out parameters. |