c#如何获取程序所在硬盘或U盘的序列号(比如我有HDD1和HDD2两个硬盘 程序在HDD2上的话就获取HDD2的硬盘序列号)
以及连上网上网的那张网卡的MAC地址(比如我有两张网卡我是通过哪张连接网络就获取哪张网卡的MAC地址)

解决方案 »

  1.   

    Mac 地址
    要引入 system.management
        public static void Main()
        {
            Console.WriteLine( getLocalMac());
        }
        public static 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);
        }
      

  2.   

    获取当前所在的盘符
    Console.WriteLine(Directory.GetDirectoryRoot(Environment.CurrentDirectory));
      

  3.   

    macManagementObjectSearcher nisc = new ManagementObjectSearcher("select * from Win32_NetworkAdapterConfiguration");
                foreach (ManagementObject nic in nisc.Get())
                {
                    if (Convert.ToBoolean(nic["ipEnabled"]) == true)
                    {
                        this.label2.Text = Convert.ToString(nic["MACAddress"]);
                    }
                }
      

  4.   

    http://www.cnblogs.com/cloudstep/archive/2010/01/28/1658770.html
    看看这个吧,会有帮助的吧