C#获得服务器的信息

        以前做了个获取服务器硬件信息的功能,当时随便搜了下,搜到一个例子,在几个机子上都运行了下,一切正常,于是乎就放到项目中去了,不过总感觉别扭,因为用到了系统的API,还得构造枚举。找了找原来C#有封装的好好的,C#提供了ManagementClass类(命名空间System.Management),MSDN官方资料 ,官方的例子可以获得磁盘驱动器模块的方法、属性和限定符。

        如下就可以将所有的属性名信息以及值都打印出来,格式为 属性名:属性值。

            string path = "Win32_LogicalDisk";
            ManagementClass managementClass = new ManagementClass(path);
            ManagementObjectCollection mn = managementClass.GetInstances();
            PropertyDataCollection properties =managementClass.Properties;
            Console.WriteLine(path);
            foreach (PropertyData property in properties)
            {
                Console.Write(property.Name+" : ");
                foreach (ManagementObject m in mn)
                {
                    Console.WriteLine(m.Properties[property.Name].Value);
                }
            }

        然后所要做的就是找出相应模块的path,可参考枪手亨利 和幸小勇 的两篇文章,前者是大全但注释偏少,后者是常用的且注释比较全。

你可能感兴趣的:(properties,String,C#,服务器,Path,磁盘)