社区
图形处理/算法
帖子详情
!!读取硬盘序列号,通过一定的算法生成16位长的字符串做为序列号?
cuterain
2003-10-19 05:30:08
!!读取硬盘序列号,通过一定的算法生成16位长的字符串做为序列号?
...全文
125
5
打赏
收藏
!!读取硬盘序列号,通过一定的算法生成16位长的字符串做为序列号?
!!读取硬盘序列号,通过一定的算法生成16位长的字符串做为序列号?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
cactili
2004-01-08
打赏
举报
回复
呵呵,给分0!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
BOOL LPhysicsID::GetHDSerialize(int nNumber,char * pszSerialize,int nCB)
{
char hd[80];
PIDSECTOR phdinfo;
char s[41];
HANDLE h;
GETVERSIONOUTPARAMS vers;
SENDCMDINPARAMS in;
SENDCMDOUTPARAMS out;
ZeroMemory(&vers,sizeof(vers));
DWORD i;
for (int j = 0 ; j < 100 ; j++)
{
sprintf(hd,"\\\\.\\PhysicalDrive%d",j);
USES_CONVERSION;
h=CreateFile(A2T(hd),GENERIC_READ|GENERIC_WRITE,FILE_SHARE_READ|FILE_SHARE_WRITE,0,OPEN_EXISTING,0,0);
if(!h)
{
continue;
}
if (!DeviceIoControl(h,DFP_GET_VERSION,0,0,&vers,sizeof(vers),&i,0))
{
CloseHandle(h);
continue;
}
//If IDE identify command not supported, fails
if (!(vers.fCapabilities&1))
{
CloseHandle(h);
continue;
}
//Identify the IDE drives
ZeroMemory(&in,sizeof(in));
ZeroMemory(&out,sizeof(out));
if (j&1)
{
in.irDriveRegs.bDriveHeadReg=0xb0;
}
else
{
in.irDriveRegs.bDriveHeadReg=0xa0;
}
if (vers.fCapabilities&(16>>j))
{
//We don't detect a ATAPI device.
//cout<<"Drive "<<(int)(j+1)<<" is a ATAPI device, we don't detect it"<<endl;
continue;
}
else
{
in.irDriveRegs.bCommandReg=0xec;
}
in.bDriveNumber=j;
in.irDriveRegs.bSectorCountReg=1;
in.irDriveRegs.bSectorNumberReg=1;
in.cBufferSize=512;
if (!DeviceIoControl(h,DFP_RECEIVE_DRIVE_DATA,&in,sizeof(in),&out,sizeof(out),&i,0))
{
CloseHandle(h);
continue;
}
if(j == nNumber)
{
phdinfo=(PIDSECTOR)out.bBuffer;
CloseHandle(h);
memcpy(s,phdinfo->sSerialNumber,20);
s[20]=0;
ChangeByteOrder(s,20);
if(nCB < 20)
return FALSE;
strncpy(pszSerialize,s,nCB);
int nLen = 0;
TrimString(pszSerialize,nLen);
return TRUE;
}
CloseHandle(h);
}
return TRUE;
}
tyzyx
2003-10-20
打赏
举报
回复
up
cuterain
2003-10-20
打赏
举报
回复
ip
cuterain
2003-10-19
打赏
举报
回复
uo
cuterain
2003-10-19
打赏
举报
回复
UP
MyFll Microsoft Visual FoxPro设计的扩展库
des
16
采用DES
算法
加密或解密一个
字符串
,长度为
16
位 des24 采用DES
算法
加密或解密一个
字符串
,长度为24位 EnDeString 双向加密解密
字符串
的函数 Encrypt 双向加密解密
字符串
RSACalc RSA计算函数 RSAGen ...
基于python脚本实现软件的注册功能(机器码+注册码机制)
注册过程是用户将程序运行后显示的机器码(C盘的卷序号)发回给管理员,管理员对机器码加密后
生成
加密文件或
字符串
返回给用户。每次启动程序,在有注册文件的情况下,程序就会通过DES和base64解码,并与此刻获取到的...
尹成Python27天入门到项目实战
字符串
高级简单回顾..eval与exec简介
字符串
的简单规范
字符串
的截取
字符串
...
字符串
以什么为结束tab键转换find函数与rfind函数index函数与rindex函数
字符串
判断
字符串
间隔求长度以及左右填充
字符串
大小写取出最大最小...
delphi 开发经验技巧宝典源码
0121 使用StrToBool函数将
字符串
转换为布尔类型 81 4.6 对话框函数 81 0122 使用InputBox函数显示输入对话框 81 0123 使用MessageDlg函数显示不同风格的对话框 81 0124 使用CreateMessageDialog函数创建...
图形处理/算法
19,468
社区成员
50,698
社区内容
发帖
与我相关
我的任务
图形处理/算法
VC/MFC 图形处理/算法
复制链接
扫一扫
分享
社区描述
VC/MFC 图形处理/算法
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章