C# Language externe


Exemple

Le mot clé extern est utilisé pour déclarer les méthodes implémentées en externe. Cela peut être utilisé conjointement avec l'attribut DllImport pour appeler du code non géré à l'aide des services Interop. qui dans ce cas viendra avec static modificateur static

Par exemple:

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);
    }
}

Cela utilise la méthode SetForegroundWindow importée de la bibliothèque User32.dll

Cela peut également être utilisé pour définir un alias d'assembly externe. ce qui nous permet de référencer différentes versions de mêmes composants à partir d'un seul assemblage.

Pour référencer deux assemblys avec les mêmes noms de type complets, un alias doit être spécifié à l'invite de commandes, comme suit:

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

Cela crée les alias externes GridV1 et GridV2. Pour utiliser ces alias depuis un programme, référencez-les en utilisant le mot-clé extern. Par exemple:

extern alias GridV1;
extern alias GridV2;