`
guanhuaing
  • 浏览: 1196557 次
文章分类
社区版块
存档分类
最新评论

c#获取本机电脑相关信息

 
阅读更多

建立一个类.然后读取信息.调用代码如下.
HardInfoClass myclass=new HardInfoClass();
textBox1.Text=myclass.GetHardDiskID();
textBox2.Text=myclass.GetCpuID();
textBox3.Text=myclass.GetNetCardMAC();
textBox4.Text=myclass.GetNetCardIP();
textBox5.Text=myclass.GetHostName();
textBox6.Text=myclass.GetVolOf("D");//C盘58c6b679跟D盘6ed62864不一样

//textBox7.Text=myclass.GetHashCode();
//textBox8.Text=myclass.GetCpuID();

类HardInfoClass代码如下

using System;
using System.Net;
using System.Runtime.InteropServices;
using System.Management; //需要在解决方案中引用System.Management.DLL文件

namespace FileTransLate.PCStatus
{
/// <summary>
/// HardInfoClass 的摘要说明。
/// </summary>
public class HardInfoClass
{

[DllImport("kernel32.dll")]
private static extern int GetVolumeInformation(
string lpRootPathName,
string lpVolumeNameBuffer,
int nVolumeNameSize,
ref int lpVolumeSerialNumber,
int lpMaximumComponentLength,
int lpFileSystemFlags,
string lpFileSystemNameBuffer,
int nFileSystemNameSize
);

public HardInfoClass()
{
//
// TODO: 在此处添加构造函数逻辑
//
}

//取机器名
public string GetHostName()
{
return System.Net.Dns.GetHostName();
}

//取CPU编号
public string GetCpuID()
{
try
{
ManagementClass mc = new ManagementClass("Win32_Processor");
ManagementObjectCollection moc = mc.GetInstances();

string strCpuID = null ;
foreach( ManagementObject mo in moc )
{
strCpuID = mo.Properties["ProcessorId"].Value.ToString();
break;
}
return strCpuID;
}
catch
{
return "";
}

}//end method

//取第一块硬盘编号
public string GetHardDiskID()
{
try
{
ManagementObjectSearcher searcher = new ManagementObjectSearcher("SELECT * FROM Win32_PhysicalMedia");
string strHardDiskID = null ;
foreach(ManagementObject mo in searcher.Get())
{
strHardDiskID = mo["SerialNumber"].ToString().Trim();
break;
}
return strHardDiskID ;
}
catch
{
return "";
}
}
//获取网卡MAC地址

public string GetNetCardMAC()
{
try
{
string stringMAC = "";
ManagementClass MC = new ManagementClass("Win32_NetworkAdapterConfiguration");
ManagementObjectCollection MOC= MC.GetInstances();

foreach(ManagementObject MO in MOC)
{
if ((bool)MO["IPEnabled"] == true)
{
stringMAC += MO["MACAddress"].ToString();

}
}
return stringMAC;
}
catch
{
return "";
}
}

//获取硬盘信息的代码
public string GetVolOf(string drvID)
{
try
{
const int MAX_FILENAME_LEN = 256;
int retVal = 0;
int a =0;
int b =0;
string str1 = null;
string str2 = null;


int i = GetVolumeInformation(
drvID + @":/",
str1,
MAX_FILENAME_LEN,
ref retVal,
a,
b,
str2,
MAX_FILENAME_LEN
);

return retVal.ToString("x");
}
catch
{
return "";
}
}


//获取当前网卡IP地址
public string GetNetCardIP()
{
try
{
string stringIP = "";
ManagementClass MC = new ManagementClass("Win32_NetworkAdapterConfiguration");
ManagementObjectCollection MOC= MC.GetInstances();

foreach(ManagementObject MO in MOC)
{
if ((bool)MO["IPEnabled"] == true)
{
string[] IPAddresses = (string[]) MO["IPAddress"];
if(IPAddresses.Length > 0)
stringIP = IPAddresses[0].ToString();

}
}
return stringIP;
}
catch
{
return "";
}
}

}
}

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics