rt
获取硬盘序列号最好

解决方案 »

  1.   

    //获取本机的IP
      public string getLocalIP()
      {
       string strHostName = Dns.GetHostName();  //得到本机的主机名
       IPHostEntry ipEntry = Dns.GetHostByName(strHostName); //取得本机IP
       string strAddr = ipEntry.AddressList[0].ToString();
       return(strAddr);
      }
      //获取本机的MAC
      public string getLocalMac()
      {
       string mac = null;
       ManagementObjectSearcher query =new ManagementObjectSearcher("SELECT * FROM Win32_NetworkAdapterConfiguration") ;
       ManagementObjectCollection queryCollection = query.Get();
       foreach( ManagementObject mo in queryCollection ) 
       { 
          if(mo["IPEnabled"].ToString() == "True")
            mac = mo["MacAddress"].ToString();
       }
       return(mac);
      }
     
      //获取远程主机IP
      public string[] getRemoteIP(string RemoteHostName)
      {
       IPHostEntry ipEntry = Dns.GetHostByName(RemoteHostName);
       IPAddress[] IpAddr = ipEntry.AddressList;
       string[] strAddr = new string[IpAddr.Length];
       for (int i=0;i<IpAddr.Length;i++)
       {
        strAddr[i] = IpAddr[i].ToString();
       }
       return(strAddr);
      }
      //获取远程主机MAC
      public string getRemoteMac(string localIP, string remoteIP) 
      { 
       Int32 ldest= inet_addr(remoteIP); //目的ip 
       Int32 lhost= inet_addr(localIP); //本地ip 
      
       try 
       { 
        Int64 macinfo = new Int64(); 
        Int32 len = 6; 
        int res = SendARP(ldest,0, ref macinfo, ref len); 
        return Convert.ToString(macinfo,16); 
       } 
       catch(Exception err) 
       { 
        Console.WriteLine("Error:{0}",err.Message); 
       } 
       return 0.ToString();
      } 
      
      
      public static void Main(string[] args)
      {
       getIP gi = new getIP();
       Console.WriteLine("本地网卡信息:");
       Console.WriteLine(gi.getLocalIP() + " - " + gi.getLocalMac());
       
       Console.WriteLine("\n\r远程网卡信息:");
       string[] temp = gi.getRemoteIP("scmobile-tj2");
       for(int i=0;i<temp.Length;i++)
       {
             Console.WriteLine(temp[i]);
       }
       Console.WriteLine(gi.getRemoteMac("192.168.0.3","192.168.0.1"));
      }
     } 
      

  2.   

    //硬盘序列号
    myinfo1= new ManagementClass("WIN32_DiskDrive");
    my=myinfo1.GetInstances();
    foreach( ManagementObject one in my)
    {info=one["Model"].ToString();
    //MessageBox.Show(info);
    this.textBox3.Text=info;
    break;
    }
    //主办序列号
    myinfo1= new ManagementClass("WIN32_BaseBoard");
    my=myinfo1.GetInstances();
    foreach( ManagementObject one in my)
    {info=one["serialnumber"].ToString();
    //MessageBox.Show(info);
    this.textBox4.Text=info;
    break;
    }