<?xml version="1.0" encoding="utf-8"?>
<Namespace Name="System.Runtime.InteropServices">
  <Docs>
    <summary>
      <attribution license="cc4" from="Microsoft" modified="false" />
      <para>The <see cref="N: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 <format type="text/html"><a href="ccb68ce7-b0e9-4ffb-839d-03b1cd2c1258">Interoperating with Unmanaged Code</a></format>. </para>
    </summary>
    <remarks>
      <attribution license="cc4" from="Microsoft" modified="false" />
      <para>Members of this namespace provide several categories of functionality, as shown in the following table. Attributes control marshaling behavior, such as how to arrange structures or how to represent strings. The most important attributes are <see cref="T:System.Runtime.InteropServices.DllImportAttribute" />, which you use to define platform invoke methods for accessing unmanaged APIs, and <see cref="T:System.Runtime.InteropServices.MarshalAsAttribute" />, which you use to specify how data is marshaled between managed and unmanaged memory.</para>
    </remarks>
  </Docs>
</Namespace>