소프트웨어에 대한 고유 코드 CPUID+ 마더보드 ID+ 메모리 ID 생성
2583 단어 C#
계산에 참여하는 하드웨어 리소스 ID는 CPUID, 마더보드 ID 및 메모리 ID입니다.샘플 코드는 다음과 같습니다.
///
/// ID(16 HASH )
///
///
private static string GetSensorID()
{
string sensorID = string.Empty;
string basicID = GetCPUID() + GetMotherboardID() + GetPhysicalMemoryID();
System.Security.Cryptography.MD5CryptoServiceProvider mD5CryptoServiceProvider = new System.Security.Cryptography.MD5CryptoServiceProvider();
byte[] hashedBuff = mD5CryptoServiceProvider.ComputeHash(Encoding.UTF8.GetBytes(basicID));
for (int i = 4; i < 12; i++)
{
sensorID += hashedBuff[i].ToString("X2");
}
return sensorID;
}
///
/// cpu
///
///
private static string GetCPUID()
{
var myCpu = new ManagementClass("win32_Processor").GetInstances();
var serial = "";
foreach (ManagementObject cpu in myCpu)
{
var val = cpu.Properties["Processorid"].Value;
serial += val == null ? "" : val.ToString();
}
return serial;
}
///
///
///
///
private static string GetMotherboardID()
{
var myMb = new ManagementClass("Win32_BaseBoard").GetInstances();
var serial = "";
foreach (ManagementObject mb in myMb)
{
var val = mb.Properties["SerialNumber"].Value;
serial += val == null ? "" : val.ToString();
}
return serial;
}
///
/// , CPUID
///
///
private static string GetPhysicalMemoryID()
{
string memoryID = "";
ManagementObjectSearcher mos = new ManagementObjectSearcher("select * from Win32_PhysicalMemory");
foreach (var prop in mos.Get())
{
memoryID = memoryID + prop["PartNumber"].ToString().Trim() + prop["SerialNumber"].ToString().Trim();
}
return memoryID;
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
WebView2를 Visual Studio 2017 Express에서 사용할 수 있을 때까지Evergreen .Net Framework SDK 4.8 VisualStudio2017에서 NuGet을 사용하기 때문에 패키지 관리 방법을 packages.config 대신 PackageReference를 사용해야...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.