1

为了获得卷序列,我编写了一个如下所示的函数:

   string drive = Environment.ExpandEnvironmentVariables("%SystemDrive%").Replace(":", "");
   string id = getVolumeSerial(drive);

private static string getVolumeSerial(string drive)
{
    ManagementObject disk = new ManagementObject(@"win32_logicaldisk.deviceid="""
         + drive + @":""");
    disk.Get();

    string volumeSerial = disk["VolumeSerialNumber"].ToString();
    disk.Dispose();

    return volumeSerial;
}

我将包含该软件的软件部署给 30 人,但在 31 人的计算机上,ManagementObject 的初始化失败并抛出异常。是否有更好/替代/更可靠的方法来获取卷序列号?

4

0 回答 0