Как определить, действителен ли UUID материнской платы?
Это продолжение этого вопроса, который был не очень хорошо принят:
В ответ на этот вопрос - как вы проверяете действительность UUID материнской платы? Насколько я понимаю, UUID генерируются и предоставляются поставщиком материнских плат. Есть случаи, когда поставщик просто не предоставляет UUID по любой причине.
Сценарий, который я использую, это:
string UUID = string.Empty;
ManagementClass mc = new ManagementClass("Win32_ComputerSystemProduct");
ManagementObjectCollection moc = mc.GetInstances();
foreach (ManagementObject mo in moc)
{
UUID = mo.Properties["UUID"].Value.ToString();
break;
}
return UUID;
Если ни один поставщик не предоставит UUID на конкретном компьютере, выходные данные будут такими:
FFFFFFFF-FFFF-FFFF-FFFF-FFFFFFFFFFFF
Я заметил, что в этом случае оператор catch, который я имею в виду, на самом деле не будет вызван, поскольку технически нет ошибки, связанной с неподтвержденным UUID.
Имея это в виду - как вы проверяете валидность UUID, кроме явного сравнения строк с FFFFFFFF-FFFF-FFFF-FFFF-FFFFFFFFFFFF
? Является ли явное сравнение строк хорошей идеей?