Как я могу получить серийный номер жесткого диска, на котором установлена ОС windows
Я разработал приложение, которое использует серийный номер жесткого диска для активации, но когда дело доходит до ПК, который использует несколько жестких дисков, это проблема, поэтому я пытаюсь найти серийный номер жесткого диска, который поставляется с установкой ОС, более четко жесткий диск, который действует как диск C .Я также попробовал приведенный ниже код, но он иногда возвращает информацию о диске D.
Что я уже пробовал:
public string GetHardSerial() { ManagementObjectSearcher Finder = new ManagementObjectSearcher("Select * from Win32_OperatingSystem"); string Name = ""; string SerialNumber = ""; foreach (ManagementObject OS in Finder.Get()) Name = OS["Name"].ToString(); //Name = "Microsoft Windows XP Professional|C:\WINDOWS|\Device\Harddisk0\Partition1" int ind = Name.IndexOf("Harddisk") + 8; int HardIndex = Convert.ToInt16(Name.Substring(ind, 1)); Finder = new ManagementObjectSearcher("SELECT * FROM Win32_DiskDrive WHERE Index=" + HardIndex); foreach (ManagementObject HardDisks in Finder.Get()) foreach (ManagementObject HardDisk in HardDisks.GetRelated("Win32_PhysicalMedia")) SerialNumber = HardDisk["SerialNumber"].ToString(); // TextBox1.Text = Convert.ToString(Name); // TextBox2.Text = Convert.ToString(SerialNumber); return SerialNumber; }
Kornfeld Eliyahu Peter
В чем же проблема? Вы не знаете, как найти жесткий диск, на котором установлена ОС? Или вы не знаете, как получить серийный номер для этого диска?
Member 14052128
как именно найти серийный ключ для жесткого диска с установленной ОС?
Member 14052128
код, который я попробовал, вернет последовательный ключ, для которого приходит первый диск в качестве orderd в device manger
F-ES Sitecore
Просто чтобы вы знали, это получение сведений о диске сервера, на котором установлено ваше приложение, а не о клиентском браузере.