How to Get MAC address programatically in c# for a windows mobile 6.0 device

后端 未结 2 553
醉话见心
醉话见心 2021-01-05 08:56

How to Get MAC address programatically in c# for a windows mobile 6.0 device? The System.Net.NetworkInformation is not supported in ,net compatc framework 3.5.

相关标签:
2条回答
  • 2021-01-05 09:20

    I know it's been awhile, but I needed this and found I could use OpenNETCF version of the code above with a tweak:

    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("-");
        }
    }
    
    0 讨论(0)
  • 2021-01-05 09:20

    We can use MDSDK in this type of problems like

    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;
                    }
                }
            }
        }
    }
    
    0 讨论(0)
提交回复
热议问题