-1

コードを参照してください:

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

「GetCurrentProcessHandle」が「静的」でなければならない理由

4

2 に答える 2

6

Windows API にはインスタンスの一貫した概念がないため、これは P/Invoke メソッドの要件です。

ソース: http://msdn.microsoft.com/en-us/magazine/cc164123.aspx

于 2012-07-03T14:06:45.540 に答える
1

外部からインポートされた関数は、本質的に静的です。それらを静的にしないと、何も得られません。インスタンス メソッドはローカル変数を使用できますが、これはとにかく dll インポート ルーチンでは不可能です。

于 2012-07-03T14:11:00.313 に答える