你好,欢迎来到电脑编程技巧与维护杂志社! 杂志社简介广告服务读者反馈编程社区  
合订本订阅
 
 
您的位置:杂志经典 / 计算机安全与维护
在VC中实现软件版权保护的几种方法(五)
 

 if ( ! WinNTReadIDEHDSerial(m_wWinNTHDSerial))

           WinNTReadSCSIHDSerial(m_wWinNTHDSerial); 

      strcpy (m_buffer, DWORDToChar (m_wWinNTHDSerial, 10, 19));

  }

  return m_buffer;

}

// Windows NT/2000/XP下读取IDE硬盘序列号

BOOL CGetHDSerial::WinNTReadIDEHDSerial(DWORD * buffer)

{

  BYTE IdOutCmd [sizeof (SENDCMDOUTPARAMS) + IDENTIFY_BUFFER_SIZE - 1];

   BOOL bFlag = FALSE;

   int  drive = 0;

   char driveName [256];

   HANDLE hPhysicalDriveIOCTL = 0;   

     

   sprintf (driveName, "\\\\.\\PhysicalDrive%d", drive);

   //  Windows NT/2000/XP下创建文件需要管理员权限

   hPhysicalDriveIOCTL = CreateFile (driveName,

                            GENERIC_READ | GENERIC_WRITE,

                            FILE_SHARE_READ | FILE_SHARE_WRITE, NULL,

                            OPEN_EXISTING, 0, NULL);

 

   if (hPhysicalDriveIOCTL != INVALID_HANDLE_VALUE)

   {

       GETVERSIONOUTPARAMS VersionParams;

       DWORD               cbBytesReturned = 0;

 

       // 得到驱动器的IO控制器版本

       memset ((void*) &VersionParams, 0, sizeof(VersionParams));

       if(DeviceIoControl (hPhysicalDriveIOCTL, IOCTL_GET_VERSION,
  推荐精品文章

·2024年9月目录 
·2024年8月目录 
·2024年7月目录 
·2024年6月目录 
·2024年5月目录 
·2024年4月目录 
·2024年3月目录 
·2024年2月目录 
·2024年1月目录
·2023年12月目录
·2023年11月目录
·2023年10月目录
·2023年9月目录 
·2023年8月目录 

  联系方式
TEL:010-82561037
Fax: 010-82561614
QQ: 100164630
Mail:gaojian@comprg.com.cn

  友情链接
 
Copyright 2001-2010, www.comprg.com.cn, All Rights Reserved
京ICP备14022230号-1,电话/传真:010-82561037 82561614 ,Mail:gaojian@comprg.com.cn
地址:北京市海淀区远大路20号宝蓝大厦E座704,邮编:100089