Я должен в своей программе связать лицензию на аппаратный идентификатор. Я попробовал, используют WMI, но он все еще замедляется.
Мне нужны, например, ЦП, жесткий диск и информация о материнской плате.
Более подробную информацию смотрите по этой ссылке
Следующий код даст вам ID процессора:
требуется пространство имен System.Management
var mbs = new ManagementObjectSearcher("Select ProcessorId From Win32_processor");
ManagementObjectCollection mbsList = mbs.Get();
string id = "";
foreach (ManagementObject mo in mbsList)
{
id = mo["ProcessorId"].ToString();
break;
}
Для ID жесткого диска и id материнской платы смотрите эту ссылку
Чтобы ускорить эту процедуру, убедитесь, что вы не используете SELECT *
, а выбираете только то, что вам действительно нужно. Используйте SELECT *
только во время разработки, когда вы пытаетесь выяснить, что вам нужно использовать, потому что тогда запрос будет выполняться намного дольше.