EXTERN

extern 關鍵字用於宣告外部實現的方法。這可以與 DllImport 屬性結合使用,以使用 Interop 服務呼叫非託管程式碼。在這種情況下,它將帶有 static 修飾符

例如:

using System.Runtime.InteropServices;
public class MyClass
{
    [DllImport("User32.dll")]
    private static extern int SetForegroundWindow(IntPtr point);

    public void ActivateProcessWindow(Process p)
    {
        SetForegroundWindow(p.MainWindowHandle);
    }
}

這使用從 User32.dll 庫匯入的 SetForegroundWindow 方法

這也可用於定義外部程式集別名。這讓我們可以從單個程式集中引用相同元件的不同版本。

要引用具有相同完全限定型別名稱的兩個程式集,必須在命令提示符處指定別名,如下所示:

/r:GridV1=grid.dll
/r:GridV2=grid20.dll

這將建立外部別名 GridV1 和 GridV2。要在程式中使用這些別名,請使用 extern 關鍵字引用它們。例如:

extern alias GridV1;
extern alias GridV2;