所谓机器的机器码其实就是电脑的一些特征码,包括硬盘序列号、CPU编号、BIOS编号等等和硬件有关的编号。你可以用在VC++中获取这些编号,并用一定的算法将他们组合后,就生成了一个机器码,用这个机器码按照一定的算法生成一个注册码,这样就对你的软件进行了保护,使得只有拥有这个机器码的机器才能安装你的软件。获取硬盘序列号的方法如下(代码)以驱动器C为例:char m_Volume[256];//卷标名char m_FileSysName[256];DWORD m_SerialNum;//序列号DWORD m_FileNameLength;DWORD m_FileSysFlag;::GetVolumeInformation("c:\\",m_Volume,256,&m_SerialNum,&m_FileNameLength,&m_FileSysFlag,256);执行该函数后,m_Volume就是卷标名字符串,m_SerialNum就是序列号
ipconfig /all 可以查看mac地址
@echo off
for %%i in (%PROCESSOR_ARCHITECTURE% %PROCESSOR_IDENTIFIER%
%PROCESSOR_LEVEL% %PROCESSOR_REVISION%) do echo %%i
pause
以上代码保存可以查看 cpu的相关信息。
硬盘的信息不知道
软件特征码是电脑的硬件指纹,是硬盘的唯一标识。
以下是KIS和K/3获取软件特征码的途径:
(1) KIS获取软件特征码的途径
KIS迷你版用户取得软件特征码的路径:
在本机运行金蝶软件产品,打开主界面,选择帮助菜单下的用户注册,显示用户注册界面,上面会显示该机的“软件特征码”。
KIS标准版、KIS业务版、KIS专业版用户取得软件特征码的路径:
网络版用户在服务器端(单机版用户在本机)运行金蝶软加密网络服务器。取得软件特征码的路径:进入金蝶KIS软加密网络服务器主界面,点击用户注册,系统d出用户注册窗口,上面会显示该机的“软件特征码”。
(2)K/3获取软件特征码的途径
请登录中间层服务器的帐套管理中获取软件特征码。具体步骤:1) 登录“账套管理”;2)选择“系统”下拉菜单;3)点击“系统使用状况”;4)在d出窗口的“控制”下拉菜单中选择“软件许可申请”;5)查看“软件特征码”。
软件特征码是电脑的硬件指纹,是硬盘的唯一标识。
以下是KIS和K/3获取软件特征码的途径:
(1) KIS获取软件特征码的途径
KIS迷你版用户取得软件特征码的路径:
在本机运行金蝶软件产品,打开主界面,选择帮助菜单下的用户注册,显示用户注册界面,上面会显示该机的“软件特征码”。
KIS标准版、KIS业务版、KIS专业版用户取得软件特征码的路径:
网络版用户在服务器端(单机版用户在本机)运行金蝶软加密网络服务器。取得软件特征码的路径:进入金蝶KIS软加密网络服务器主界面,点击用户注册,系统d出用户注册窗口,上面会显示该机的“软件特征码”。
(2)K/3获取软件特征码的途径
请登录中间层服务器的帐套管理中获取软件特征码。
具体步骤:1) 登录“账套管理”;
2)选择“系统”下拉菜单;
3)点击“系统使用状况”;
4)在d出窗口的“控制”下拉菜单中选择“软件许可申请”;
5)查看“软件特征码”。
有的,我通过google的代码搜索,找到一些。
给你添加在这里,作为参考,具体你可以去哪里自己搜搜,应该会有你想要的。有不懂m我。
using System;
using SystemCollections;
using SystemManagement;
namespace ProductInfo
{
public class SystemInfo
{
private static IList cpuId;
private static IList driveId;
private static IList networkAdapterId;
private static string operationSystemName;
private static string productId;
public static string OperationSystemName
{
get
{
if (stringIsNullOrEmpty(operationSystemName))
{
operationSystemName = GetOperationSystemInName();
}
return operationSystemName;
}
}
public static string MachineName
{
get { return EnvironmentMachineName; }
}
/// <summary>
/// 获取系统名称
/// </summary>
/// <returns></returns>
private static string GetOperationSystemInName()
{
OperatingSystem os = EnvironmentOSVersion;
string osName = "UNKNOWN";
switch (osPlatform)
{
case PlatformIDWin32Windows:
switch (osVersionMinor)
{
case 0:
osName = "Windows 95";
break;
case 10:
osName = "Windows 98";
break;
case 90:
osName = "Windows ME";
break;
}
break;
case PlatformIDWin32NT:
switch (osVersionMajor)
{
case 3:
osName = "Windws NT 351";
break;
case 4:
osName = "Windows NT 4";
break;
case 5:
if (osVersionMinor == 0)
{
osName = "Windows 2000";
}
else if (osVersionMinor == 1)
{
osName = "Windows XP";
}
else if (osVersionMinor == 2)
{
osName = "Windows Server 2003";
}
break;
case 6:
osName = "Longhorn";
break;
}
break;
}
return StringFormat("{0}-{1}", osName, osVersionToString());
}
/// <summary>
/// CPU序列号
/// </summary>
public static IList CpuId
{
get
{
if (cpuId == null)
{
try
{
string cpuInfo = "";
ManagementClass cimobject = new ManagementClass("Win32_Processor");
ManagementObjectCollection moc = cimobjectGetInstances();
IList result = new ArrayList();
foreach (ManagementObject mo in moc)
{
cpuInfo = moProperties["ProcessorId"]ValueToString();
resultAdd(cpuInfo);
}
cpuId = result;
}
catch (Exception ex)
{
IList result = new ArrayList();
resultAdd("--");
cpuId = result;
}
}
return cpuId;
}
}
/// <summary>
/// 硬盘序列号
/// </summary>
public static IList DriveId
{
get
{
if (driveId == null)
{
try
{
//获取硬盘ID
String HDid;
ManagementClass cimobject1 = new ManagementClass("Win32_DiskDrive");
ManagementObjectCollection moc1 = cimobject1GetInstances();
IList result = new ArrayList();
foreach (ManagementObject mo in moc1)
{
HDid = (string) moProperties["Model"]Value;
resultAdd(HDid);
}
driveId = result;
}
catch (Exception ex)
{
IList result = new ArrayList();
resultAdd("--");
driveId = result;
}
}
return driveId;
}
}
/// <summary>
/// 获取网卡硬件地址
/// </summary>
public static IList NetworkAdapterId
{
get
{
if (networkAdapterId == null)
{
try
{
ManagementClass mc = new ManagementClass("Win32_NetworkAdapterConfiguration");
ManagementObjectCollection moc2 = mcGetInstances();
IList result = new ArrayList();
foreach (ManagementObject mo in moc2)
{
if ((bool) mo["IPEnabled"] == true)
resultAdd(mo["MacAddress"]ToString()Replace(":", "-"));
moDispose();
}
networkAdapterId = result;
}
catch (Exception ex)
{
IList result = new ArrayList();
resultAdd("--");
networkAdapterId = result;
}
}
return networkAdapterId;
}
}
}
}
以上就是关于如何获取机器码全部的内容,包括:如何获取机器码、如何获取计算机的特征码,包括MAC、硬盘ID和CPU的ID,急求cmd里的指令,代码我看不懂,并且我也不会弄、软件特征码怎么查询等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)