資源簡介
根據獲取硬盤序列號和CPU序列號生成機器碼,硬盤序列號和CPU序列號全球唯一,所以保證了機器碼全球唯一

代碼片段和文件信息
/*
?*?功??能:獲取機器碼,實現注冊功能,機器碼是根據硬盤序列號和CPU序列號生成,硬盤序列號和CPU序列號全球唯一
?*
?*?時??間:2010/4/21?13:40:12
?*
?*?程序員:王文壯
?*
?*?Q????Q:1020304029
?*
?*?郵??箱:WangWenzhuang_net@163.com
?*
?*?博??客:http://blog.csdn.net/wangwenzhuang
?*/
using?System;
using?System.Collections.Generic;
using?System.ComponentModel;
using?System.Drawing;
using?System.Text;
using?System.Windows.Forms;
using?System.Management;
using?System.Security.Cryptography;
namespace?GetMachineCode
{
????public?partial?class?Form1?:?Form
????{
????????public?Form1()
????????{
????????????InitializeComponent();
????????}
????????private?void?buttonGetHardDiskID_Click(object?sender?EventArgs?e)
????????{
????????????textBoxHardDiskID.Text?=?GetHardDiskID();
????????}
????????private?void?buttonGetCPUID_Click(object?sender?EventArgs?e)
????????{
????????????textBoxCPUID.Text?=?GetCPUID();
????????}
????????private?void?buttonRandomMachineCode_Click(object?sender?EventArgs?e)
????????{
????????????textBoxMachineCode.Text?=?GetSHA1MachineCode(textBoxHardDiskID.Text?+?textBoxCPUID.Text);
????????}
????????///獲取磁盤序列號?
????????///?
????????///?獲取磁盤序列號
????????///?
????????private?string?GetHardDiskID()
????????{
????????????string?hardDiskId?=?string.Empty;
????????????try
????????????{
????????????????ManagementobjectSearcher?cmicWmi?=?new?ManagementobjectSearcher(“SELECT?*?FROM?Win32_DiskDrive“);
????????????????UInt32?tmpUint32?=?0;
????????????????foreach?(Managementobject?cmicWmiObj?in?cmicWmi.Get())
????????????????{
????????????????????tmpUint32?=?Convert.ToUInt32(cmicWmiObj[“signature“].ToString());
????????????????}
????????????????hardDiskId?=?tmpUint32.ToString();
????????????}
????????????catch?{?}
????????????return?hardDiskId;
????????}
????????///獲取cpu序列號
????????///?
????????///?獲取cpu序列號
????????///?
????????private?string?GetCPUID()
????????{
????????????string?cpuId?=?string.Empty;
????????????try
????????????{
????????????????ManagementobjectSearcher?Wmi?=?new?ManagementobjectSearcher(“SELECT?*?FROM?Win32_Processor“);
????????????????foreach?(Managementobject?WmiObj?in?Wmi.Get())
????????????????{
????????????????????cpuId?=?WmiObj[“ProcessorId“].ToString();
????????????????}
????????????}
????????????catch?{?}
????????????return?cpuId;
????????}
????????///獲取經過SHA1哈希之后的機器碼
????????///?
????????///?獲取經過SHA1哈希之后的機器碼
????????///?
????????private?string?GetSHA1MachineCode(string?code)
????????{
????????????byte[]?buffer?=?Encoding.ASCII.GetBytes(code);
????????????SHA1?sha1?=?SHA1.Create();
????????????return?BitConverter.ToString(sha1.ComputeHash(buffer)).Replace(“-“?““);
????????}
????}
}
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件??????11264??2010-04-21?13:39??GetMachineCode\GetMachineCode\bin\Debug\GetMachineCode.exe
?????文件??????26112??2010-04-21?13:39??GetMachineCode\GetMachineCode\bin\Debug\GetMachineCode.pdb
?????文件??????14328??2010-04-21?13:05??GetMachineCode\GetMachineCode\bin\Debug\GetMachineCode.vshost.exe
?????文件????????490??2009-06-11?05:14??GetMachineCode\GetMachineCode\bin\Debug\GetMachineCode.vshost.exe.manifest
?????文件??????22232??2005-10-14?02:45??GetMachineCode\GetMachineCode\bin\Debug\msmdvbanet.dll
?????文件???????2972??2010-04-21?13:40??GetMachineCode\GetMachineCode\Form1.cs
?????文件???????6893??2010-04-21?13:39??GetMachineCode\GetMachineCode\Form1.Designer.cs
?????文件???????5814??2010-04-21?13:39??GetMachineCode\GetMachineCode\Form1.resx
?????文件???????3869??2010-04-21?13:05??GetMachineCode\GetMachineCode\GetMachineCode.csproj
?????文件????????712??2010-04-21?13:34??GetMachineCode\GetMachineCode\obj\Debug\GetMachineCode.csproj.FileListAbsolute.txt
?????文件????????847??2010-04-21?13:39??GetMachineCode\GetMachineCode\obj\Debug\GetMachineCode.csproj.GenerateResource.Cache
?????文件??????11264??2010-04-21?13:39??GetMachineCode\GetMachineCode\obj\Debug\GetMachineCode.exe
?????文件????????180??2010-04-21?13:39??GetMachineCode\GetMachineCode\obj\Debug\GetMachineCode.Form1.resources
?????文件??????26112??2010-04-21?13:39??GetMachineCode\GetMachineCode\obj\Debug\GetMachineCode.pdb
?????文件????????180??2010-04-21?13:05??GetMachineCode\GetMachineCode\obj\Debug\GetMachineCode.Properties.Resources.resources
?????文件???????8224??2010-04-21?13:04??GetMachineCode\GetMachineCode\obj\Debug\ResolveAssemblyReference.cache
?????文件????????475??2010-04-21?13:05??GetMachineCode\GetMachineCode\Program.cs
?????文件???????1360??2010-04-21?13:01??GetMachineCode\GetMachineCode\Properties\AssemblyInfo.cs
?????文件???????2878??2010-04-21?13:01??GetMachineCode\GetMachineCode\Properties\Resources.Designer.cs
?????文件???????5612??2010-04-21?13:01??GetMachineCode\GetMachineCode\Properties\Resources.resx
?????文件???????1099??2010-04-21?13:01??GetMachineCode\GetMachineCode\Properties\Settings.Designer.cs
?????文件????????249??2010-04-21?13:01??GetMachineCode\GetMachineCode\Properties\Settings.settings
?????文件????????932??2010-04-21?13:02??GetMachineCode\GetMachineCode.sln
????..A..H.?????13312??2010-04-21?13:40??GetMachineCode\GetMachineCode.suo
?????目錄??????????0??2010-04-21?13:15??GetMachineCode\GetMachineCode\obj\Debug\Refactor
?????目錄??????????0??2010-04-21?13:02??GetMachineCode\GetMachineCode\obj\Debug\TempPE
?????目錄??????????0??2010-04-21?13:07??GetMachineCode\GetMachineCode\bin\Debug
?????目錄??????????0??2010-04-21?13:39??GetMachineCode\GetMachineCode\obj\Debug
?????目錄??????????0??2010-04-21?13:01??GetMachineCode\GetMachineCode\bin
?????目錄??????????0??2010-04-21?13:01??GetMachineCode\GetMachineCode\obj
............此處省略6個文件信息
- 上一篇:C#+SQLServer2000學生管理系統源代碼
- 下一篇:unrate.csv
評論
共有 條評論