如何在 c# 中为 windows mobile 6.0 设备以编程方式获取 MAC 地址?.net compatc framework 3.5 不支持 System.Net.NetworkInformation。
问问题
12403 次
2 回答
3
我知道这已经有一段时间了,但我需要这个,并发现我可以使用上面代码的 OpenNETCF 版本进行调整:
INetworkInterface[] nics = NetworkInterface.GetAllNetworkInterfaces();
//for each j you can get the MAC
PhysicalAddress address = nics[0].GetPhysicalAddress();
byte[] bytes = address.GetAddressBytes();
for(int i = 0; i < bytes.Length; i++) {
// Display the physical address in hexadecimal.
Console.Write("{0}", bytes[i].ToString("X2"));
// Insert a hyphen after each byte, unless we are at the end of the address.
if(i != bytes.Length - 1) {
Console.Write("-");
}
}
于 2012-12-28T22:05:01.300 回答
0
我们可以在此类问题中使用 MDSDK,例如
using PsionTeklogix.Peripherals;
namespace EnumAdapters
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
ArrayList pList = null;
string[] lStatistic = null;
try
{
pList = Peripherals.EnumerateAdapters();
}
catch (Exception ex)
{
MessageBox.Show("failed with\r\n" + ex.Message, "EnumerateAdapters()");
Close();
return;
}
listBox1.Items.Clear();
foreach (string AdapterName in pList)
{
try
{
listBox1.Items.Add(AdapterName + (Peripherals.IsAdapterPresent(AdapterName) ? " is present" : " is NOT present") + (Peripherals.IsWirelessAdapter(AdapterName) ? " [wireless adapter] " : ""));
lStatistic = Peripherals.GetAdapterStatistics(AdapterName); // See Note 1
foreach (string StatInfo in lStatistic)
{
if (StatInfo.StartsWith("Local MAC Address"))
{
listBox1.Items.Add("» " + StatInfo);
break;
}
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
Close();
return;
}
}
}
}
}
于 2012-09-07T07:47:26.687 回答