C++获取机器码

//HardwareInfo.h

#pragma once

class CHardwareInfo
{
public:
 CHardwareInfo(void);
 ~CHardwareInfo(void);
public:
 void Read();
public:
 CString m_strMACAddress;
 CString m_strCPUSerialNumber;
 CString m_strCPUSpecification;
 CString m_strCPUManufacturers;
 CString m_strIDESerialNumber;
 CString m_strBIOSSerialNumber;
};

//HardwareInfo.cpp

#include “StdAfx.h”
#include “HardwareInfo.h”

CHardwareInfo::CHardwareInfo(void)
{
}

CHardwareInfo::~CHardwareInfo(void)
{
}
void CHardwareInfo::Read()
{
typedef char * (__stdcall *GetMAC)(int);
 typedef char * (__stdcall *GetCPUInfomation)(int);
 typedef char * (__stdcall *GetIdeSN)();
 typedef char * (__stdcall *GetBiosSN)();
 GetMAC getMAC;
 GetCPUInfomation getCPUInfomation;
 GetIdeSN getIdeSN;
 GetBiosSN getBiosSN;
 HINSTANCE hInstDll = LoadLibrary(_T(“HWInfo.dll”));
 if (hInstDll != NULL){
  getMAC = (GetMAC)GetProcAddress(hInstDll, “getMAC”);
  getCPUInfomation = (GetCPUInfomation)GetProcAddress(hInstDll, “getCPUInfomation”);
  getIdeSN = (GetIdeSN)GetProcAddress(hInstDll, “getIdeSN”);
  getBiosSN = (GetBiosSN)GetProcAddress(hInstDll, “getBiosSN”);
 }
 m_strMACAddress=CString(getMAC(0));
 m_strCPUSerialNumber=CString(getCPUInfomation(1));
 m_strCPUSpecification=CString(getCPUInfomation(2));
 m_strCPUManufacturers=CString(getCPUInfomation(3));
 m_strIDESerialNumber=CString(getIdeSN());
 m_strBIOSSerialNumber=CString(getBiosSN());
}

使用hotbokee.cn提供的HWInfo.dll

下载:HWInfo

此条目发表在C++分类目录,贴了标签。将固定链接加入收藏夹。

发表评论