Y a-t-il une façon de récupérer une adresse MAC lorsque l'adaptateur réseau est désactivé dans .NET? P>
Merci d'avance, P>
4 Réponses :
Vous pouvez utiliser WMI:
public static string GetMACAddress() { ManagementClass mc = new ManagementClass("Win32_NetworkAdapterConfiguration"); ManagementObjectCollection moc = mc.GetInstances(); string MACAddress=String.Empty; foreach(ManagementObject mo in moc) { if(MACAddress==String.Empty) // only return MAC Address from first card { MACAddress= mo["MacAddress"].ToString() ; } mo.Dispose(); } return MACAddress; }
Cela ne fonctionne pas non plus sur Windows XP. Je pense que cette réponse a été marquée comme la réponse trop rapide.
Pouvez-vous pls. Ajoutez une ligne que l'assemblage / espace de noms ont une classe «GestionClass» définie.
Référez ce lien. P>
http://msdn.microsoft.com /en-us/library/system.net.networkinformation.physicalAddress.aspx P>
L'exemple ici affiche une adresse physique de toutes les interfaces indépendamment de leur étape opérationnelle. Htth. P>
L'exemple ne reçoit pas Mac d'adaptateur Désactiver.
Il n'est pas possible d'obtenir l'adresse MAC d'un adaptateur désactivé: Ceci est dû au fait que l'adresse MAC nécessite d'interroger le pilote et que le pilote d'un adaptateur désactivé n'est pas chargé ( source ).
Vous pouvez, cependant, obtenir l'adresse MAC d'un adaptateur qui n'est pas connecté actuellement. p>
La route WMI n'est pas bonne ici, car elle affiche l'adresse MAC comme null pour les adaptateurs qui ne sont pas connectés. La bonne nouvelle est que le NetworkInterface. GetallNetworkInsaces () code>
route fonctionne simplement bien: p>
La réponse ci-dessus ne fonctionnera pas BCS. La liste renvoyée des adaptateurs réseau n'est dans aucun ordre séquentiel. Il lit tous les adaptateurs et peut être répertorié dans l'ordre aléatoire. Par conséquent, l'adaptateur connecté et déconnecté peut avoir dans n'importe quel index.
Utilisation de MS PowerShell Command Get-NetAdapter One peut obtenir l'adresse MAC de l'adaptateur réseau désactivé. p>
Pourriez-vous publier le code que vous utilisez lorsque l'adaptateur est activé, puis mentionnez quel (s) appel (s) ne fonctionne pas lorsque l'adaptateur est désactivé?