Từ 1 tới 4 trên tổng số 4 kết quả

Đề tài: Làm sao để lấy được địa chỉ MAC mà máy tính đang sử dụng ?

  1. #1
    Ngày gia nhập
    11 2010
    Bài viết
    11

    Mặc định Làm sao để lấy được địa chỉ MAC mà máy tính đang sử dụng ?

    Một máy tính có nhiều địa chỉ MAC, và vị trí của các địa chỉ MAC trong máy thì khác nhau ở từng máy, không phải máy nào cũng giống nhau, vậy làm sao để lấy được địa chỉ MAC của card mạng mình đang dùng để nối mạng ? Bạn nào biết giúp mình với, tối nay phải nộp đồ án rồi mà còn cái này vẫn đau đầu chưa xử lí được, hic hic

  2. #2
    Ngày gia nhập
    03 2009
    Bài viết
    173

    bạn getMac cho client cũ hay mới
    Visual C# Code:
    1.     using System;
    2.     using System.Windows.Forms;
    3.     using System.Management;
    4.     .
    5.     .
    6.     .
    7.      
    8.     private void button1_Click(object sender, EventArgs e)
    9.     {
    10.     ManagementObjectSearcher objQuery = null;
    11.     ManagementObjectCollection queryCollection = null;
    12.      
    13.     try
    14.     {
    15.     objQuery = new ManagementObjectSearcher("SELECT * FROM Win32_NetworkAdapterConfiguration");
    16.      
    17.     queryCollection = objQuery.Get();
    18.      
    19.     foreach (ManagementObject mgmtObject in queryCollection)
    20.     {
    21.     if (mgmtObject["MacAddress"] != null)
    22.     {
    23.     MessageBox.Show(mgmtObject["MacAddress"].ToString());
    24.     }
    25.     }
    26.     }
    27.     catch (Exception ex)
    28.     {
    29.     MessageBox.Show(ex.Source);
    30.     MessageBox.Show(ex.Message);
    31.     }
    32.      
    33.     }
    Mobilis in mobile

  3. #3
    Ngày gia nhập
    11 2010
    Bài viết
    11

    Trích dẫn Nguyên bản được gửi bởi nautilux Xem bài viết
    bạn getMac cho client cũ hay mới
    Visual C# Code:
    1.     using System;
    2.     using System.Windows.Forms;
    3.     using System.Management;
    4.     .
    5.     .
    6.     .
    7.      
    8.     private void button1_Click(object sender, EventArgs e)
    9.     {
    10.     ManagementObjectSearcher objQuery = null;
    11.     ManagementObjectCollection queryCollection = null;
    12.      
    13.     try
    14.     {
    15.     objQuery = new ManagementObjectSearcher("SELECT * FROM Win32_NetworkAdapterConfiguration");
    16.      
    17.     queryCollection = objQuery.Get();
    18.      
    19.     foreach (ManagementObject mgmtObject in queryCollection)
    20.     {
    21.     if (mgmtObject["MacAddress"] != null)
    22.     {
    23.     MessageBox.Show(mgmtObject["MacAddress"].ToString());
    24.     }
    25.     }
    26.     }
    27.     catch (Exception ex)
    28.     {
    29.     MessageBox.Show(ex.Source);
    30.     MessageBox.Show(ex.Message);
    31.     }
    32.      
    33.     }
    Cái đó là lấy ra được MAC của card mạng đang sử dụng để kết nối hả bạn ? Như cái chương trình của mình thì có 1 cái Server, các client sẽ gửi địa chỉ MAC của nó tới cho Server, về MAC để gửi tới cho Server thì lấy MAC nào cũng được, nhưng mình muốn lấy MAC của cái card mạng mà client đó đang sử dụng để hiển thị ra trên listview, còn "client cũ hay mới" là sao bạn ?
    Cái này để lấy tất cả MAC của máy:
    Code:
     NetworkInterface[] nics = NetworkInterface.GetAllNetworkInterfaces();
    Nhưng như máy của mình thì MAC card mạng kết nối internet là cái MAC thứ 2,còn của thằng bạn thì lại là cái đầu tiên, vậy nên mình ko thể lấy ra đúng cái MAC đó theo vị trí được, vậy nên mình muốn hỏi có cách nào để lấy ra đúng MAC đó ko ???

  4. #4
    Ngày gia nhập
    03 2009
    Bài viết
    173

    bạn xem xem là v4 hay v6 , MAC thì chỉ có 1 thôi , cũ hay mới là client đó đã từng connect vào server đó hay chưa
    Mobilis in mobile

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn