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;