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);
    

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

  • 相关阅读:
    acm python
    html cheatsheet
    unix cheatsheet
    liunx dd 读取系统文件
    比较文件内容是否相同
    linunx siege 安装
    数据库备份并压缩
    innobackupex xtrabackup 备份恢复mysql数据
    ubuntu安装rally
    解决Ubuntu显示中文乱码的问题
  • 原文地址:https://www.cnblogs.com/tk091/p/2548396.html
Copyright © 2011-2022 走看看