永发信息网

C# 获取硬盘序列号

答案:2  悬赏:0  手机版
解决时间 2021-02-20 05:06
C# 获取硬盘的序列号,而不是获取某个盘符的序列号 ,获取出厂的硬盘序列号。查了很多资料,都是获取盘符的。
最佳答案
有两种方法可以获取:
1.采用WMI可以获取(获取部分硬盘),代码如下:
public static List<string> GetHDIds()
{
List<string> hdIds = new List<string>();
try
{
//ManagementClass cimobject = new ManagementClass("Win32_DiskDrive");
ManagementClass cimobject = new ManagementClass("Win32_PhysicalMedia");
ManagementObjectCollection moc = cimobject.GetInstances();
foreach (ManagementObject mo in moc)
{
//String HDid = (string)mo.Properties["Model"].Value.ToString();//获取的是硬盘名称
String HDid = (string)mo.Properties["SerialNumber"].Value.ToString();
if (!string.IsNullOrEmpty(HDid))
{
hdIds.Add(HDid);
}
}
return hdIds;
}
catch (Exception r)
{
hdIds.Add("无法获得硬盘信息!");
MessageBox.Show("硬盘错误信息:" + r.Message);
return hdIds;
}
}

2:采用一个免费的DLL,DiskID32.dll(网上下载)可以获取大部分硬盘的序列号,和上一种方法结合应该可以获取绝大多数的硬盘序列号,dll可以直接放在Debug目录下,
//[DllImport("DiskID32.dll")]
//public static extern long DiskID32(ref byte DiskModel, ref byte DiskID);
//public static string GetDiskID()
//{
// byte[] DiskModel = new byte[31];
// byte[] DiskID = new byte[31];
// int i;
// string ID = "";
// if (DiskID32(ref DiskModel[0], ref DiskID[0]) != 1)
// {
// for (i = 0; i < 31; i++)
// {
// if (Convert.ToChar(DiskID[i]) != Convert.ToChar(0))
// {
// ID = ID + Convert.ToChar(DiskID[i]);
// }
// }
// ID = ID.Trim();
// }
// else
// {
// Console.WriteLine("获取硬盘序列号出错");
// }
// return ID;
//}
全部回答
string name=GetDiskVolumeSerialNumber();
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
【脚气病缺什么】脚气病的原因通常是缺乏()
雅戈尔慈溪三北大街专卖店我想知道这个在什么
西伯氯霸是什么?
我和男上司 从相识 发生关系 到分开 后来男上
黄子韬喜欢的中国艺人有哪些
西湖区青少年宫占道停车场在哪里啊,我有事要
2019年钟书金牌金典导学案课时作业八年级语文
鸭脚林问索诗债打一动物
水利水电工程一级壅水与非壅水的是什么意思
我是淮安的考生,请问在中考时用树状图来解答
宁县新世纪宾馆在哪里啊,我有事要去这个地方
牙齿不齐怎么办
昨天晚上梦到蛇,从嘴里拽出来好几条,似乎还
对于该企业裁减人员,工会依法可采取的措施是
吉祥鲜面店在什么地方啊,我要过去处理事情
推荐资讯
梦幻西游 我买了年卡后在藏宝阁卖号 。然后我
做人如山,容万物。做人如水,知进退。什么意思
班主任用英语怎么说?谢谢!
full house在英文中是什么意思?
成都市场上最便宜的香烟多少钱
【大同世界】大同世界的中心是什么?“大道”
祥和堂大药房白滕头分店在哪里啊,我有事要去
昨天被家里五个月大的狗(松狮)舔了伤口,伤
Nvidia不小心删了 怎么办
5.8×0.25乘法竖式怎么列?
下列各项,属霍乱致病菌的是()A.不凝集弧菌B.
宝宝好童车玉林市童车童床批发部北流分店怎么
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?