Bonjour à tous,

Je développe une méthode qui détermine les adresses MAC présente sur une machine et pour ce faire, ma première chose est de lister toutes ces interfaces.

Rien de bien compliqué me direz-vous, il existe en effet une méthode toute faite pour ça :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
System.Net.NetworkInterface.GetAllNetworkInterfaces()
Tout à fait d'accord, seulement cette méthode, censée me retourner un tableau d'éléments de type NetworkInterface (NetworkInterface[]), me retourne un tableau vide, comme s'il n'y avait pas d'interfaces sur ma machine.

Bizarre, parce que la commande "ifconfig" me déclare 2 interfaces, une loopback "lo" et une autre interface ethernet "eth0".

L'application a bien été exécutée en mode root et j'avais tous les droits sur la machine.

Y a-t-il une raison pour que cette méthode GetAllNetworkInterfaces() me retourne 0 ?

Merci d'avance pour vos réponses,

++

Gitch


PS : Pour les plus sceptiques, je donne le code exécuté ultra simplifié.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
public static void Main(string[] args)
{
    NetworkInterface[] adapters = NetworkInterface.GetAllNetworkInterfaces();
  Console.WriteLine(adapters.Length);
}
Résultat console : 0