The System.Runtime.InteropServices namespace provides a wide variety of
members that support COM interop and platform invoke services. If you are unfamiliar
with these services, see Interoperating with Unmanaged Code.
Provides a collection of methods for allocating unmanaged memory, copying unmanaged memory blocks, and converting managed to unmanaged types, as well as other miscellaneous methods used when interacting with unmanaged code.
Provides a way to access a managed object from unmanaged memory.