Nhu cầu sau đây được thực hiện theo chương trình:
netsh wlan show networks mode=Bssid | findstr "BSSID"
trên cho thấy địa chỉ MAC không dây của điểm truy cập đó là khác nhau từ:
arp -a | findstr 192.168.1.254
này là vì điểm truy cập có 2 địa chỉ MAC. Một cho thiết bị không dây và một cho thiết bị mạng. Tôi muốn MAC không dây nhưng nhận MAC mạng bằng cách sử dụng arp.
Sử dụng Managed Wifi API:
var wlanClient = new WlanClient();
foreach (WlanClient.WlanInterface wlanInterface in wlanClient.Interfaces)
{
Wlan.WlanBssEntry[] wlanBssEntries = wlanInterface.GetNetworkBssList();
foreach (Wlan.WlanBssEntry wlanBssEntry in wlanBssEntries)
{
byte[] macAddr = wlanBssEntry.dot11Bssid;
var macAddrLen = (uint) macAddr.Length;
var str = new string[(int) macAddrLen];
for (int i = 0; i < macAddrLen; i++)
{
str[i] = macAddr[i].ToString("x2");
}
string mac = string.Join("", str);
Console.WriteLine(mac);
}
}
C# không hoạt động trên MAC. Tôi không thể cưỡng lại. : P –
http://www.mono-project.com/Main_Page – Iain