zoukankan      html  css  js  c++  java
  • vc 获取机器码

    所谓机器的机器码其实就是电脑的一些特征码,包括硬盘序列号、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,   
      m_FileSysName,   
      256);  
    

      执行该函数后,m_Volume就是卷标名字符串,m_SerialNum就是序列号


    一个实例:
    	//获取机器码
    	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,   
    		m_FileSysName,   
    		256); 
    	CString Serial;
    	Serial.Format("1%04x",m_SerialNum^ 0x34795814);
    	SetDlgItemText(IDC_EDIT_User,Serial);
    

      偶尔也会用到。保留 一份吧。

  • 相关阅读:
    BZOJ 3744 Gty的妹子序列
    BZOJ 3872 Ant colony
    BZOJ 1087 互不侵犯
    BZOJ 1070 修车
    BZOJ 2654 tree
    BZOJ 3243 向量内积
    1003 NOIP 模拟赛Day2 城市建设
    CF865D Buy Low Sell High
    CF444A DZY Loves Physics
    Luogu 4310 绝世好题
  • 原文地址:https://www.cnblogs.com/tk091/p/2548396.html
Copyright © 2011-2022 走看看