從網路上下載一個DiskID32.dll檔案,放置到DEBUG目錄下.不同電腦擷取的編號長度有可能不同.普通台式機長度為8位類似"5VM5GRMT".聯想天運F1400位20位類似"080219BB2200WBCZRPZC".
using System;
using System.Collections.Generic;
using System.Text;
using System.Runtime.InteropServices;
using System.Reflection;
using System.Security;
using System.Security.Cryptography;
using System.IO;
namespace Common
{
public class ComputerInfo
{
[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 Model = "";
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;
}
}