Why must P/Invoke functions be static in C#?
<p>see the code:</p>

<pre><code>class VirtualMemoryManager
{
    [DllImport("kernel32.dll",EntryPoint="GetCurrentProcess")]
    internal static extern IntPtr GetCurrentProcessHandle();
}
</code></pre>

<p>Why  the "GetCurrentProcessHandle" must "static"</p>
