zoukankan      html  css  js  c++  java
  • C#中获取逻辑磁盘、网卡MAC地址、CPUID等信息的代码

    using System;
    using System.Collections.Generic;
    using System.Text;

    using System.Diagnostics;
    using System.Management;

    namespace MachineInfo
    {
        
    class GetInfo
        
    {
            
    public static string GetVolumeSerial(string strDriveLetter)
            
    {
                
    if (strDriveLetter == "" || strDriveLetter == null)
                
    {
                    strDriveLetter 
    = "C:";
                }

                ManagementObject disk 
    = new ManagementObject("win32_logicaldisk.deviceid=\"" + strDriveLetter + "\"");
                disk.Get();
                Debug.WriteLine(
    "FreeSpace: " + disk["FreeSpace"].ToString());
                
    return disk["VolumeSerialNumber"].ToString();
            }


            
    public static string GetMACAddress()
            
    {
                ManagementClass mc 
    = new ManagementClass("Win32_NetworkAdapterConfiguration");
                ManagementObjectCollection moc 
    = mc.GetInstances();
                
    string MACAddress = String.Empty;
                
    foreach (ManagementObject mo in moc)
                
    {
                    
    if (mo["MacAddress"!= null)
                    
    {
                        Debug.WriteLine(
    "Network Adapter Description: " + mo["Description"].ToString() + "-" + mo["MacAddress"].ToString());
                    }

                    
    if (MACAddress == String.Empty)
                    
    {
                        
    if ((bool)mo["IPEnabled"== true)
                        
    {
                            MACAddress 
    = mo["MacAddress"].ToString();
                        }

                    }

                    mo.Dispose();
                }

                MACAddress 
    = MACAddress.Replace(":""");
                
    return MACAddress;
            }



            
    public static string GetCPUId()
            
    {
                
    string cpuInfo = String.Empty;
                
    string temp = String.Empty;
                ManagementClass mc 
    = new ManagementClass("Win32_Processor");
                ManagementObjectCollection moc 
    = mc.GetInstances();
                
    foreach (ManagementObject mo in moc)
                
    {
                    Debug.WriteLine(
    "Processor Caption: " + mo.Properties["Caption"].Value.ToString());
                    Debug.WriteLine(
    "Processor MaxClockSpeed: " + mo.Properties["MaxClockSpeed"].Value.ToString());
                    
    if (cpuInfo == String.Empty)
                    
    {
                        cpuInfo 
    = mo.Properties["ProcessorId"].Value.ToString();
                    }

                }

                
    return cpuInfo;
            }


        }

    }

  • 相关阅读:
    DS博客作业04--图
    DS博客作业03--树
    DS博客作业02--栈和队列
    DS01-线性表
    c博客06-结构体&文件
    C博客作业05--指针
    123
    面向对象设计大作业
    购物车
    有理数类的设计
  • 原文地址:https://www.cnblogs.com/ahuang1118/p/831867.html
Copyright © 2011-2022 走看看