标题:获取磁盘序列号
取消只看楼主
scilent
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
帖 子:285
专家分:1399
注 册:2011-8-9
结帖率:100%
已结贴  问题点数:20 回复次数:3 
获取磁盘序列号
这是一位老大写的获取磁盘序列号的文件然后与用户输入的用户名进行运算,达到加密的目的,结果写到一个文件中,请大家看看,怎样再返回去得到用户名和序列号?对位的运算一窍不通呀

declare integer GetVolumeInformation in kernel32.dll;
    string,string@,integer,integer@,integer,integer,string@,integer
    *获取磁盘序列号
    if empty(thisform.text1.value)
        messagebox("请在下面添入用户名!",32,"系统提示")
        thisform.text1.setfocus
    else   
        newstr=""
        newname=""
        new=0
        serianum=0
        temp1=space(255)     &&设置字符传递缓冲区
        temp2=space(255)
        a=GetVolumeInformation("c:\",@temp1,len(temp1),@serianum,0,0,@temp2,len(temp2))
        CPKJ=serianum     &&取得序列号
        handle=fcreate("aa.RXI")
        new=bitxor(cpkj,123456789)
         nstr=alltrim(str(new))
         for m=1 to len(nstr) step 2
             newstr=newstr+chr(val(substr(nstr,m,2)))
         endfor
        b=fputs(handle,newstr)     &&将序列号加密保存到文件中
        thisname=alltrim(thisform.text1.value)
        for m=1 to len(thisname)
            onename=substr(thisname,m,1)
            newname=newname+chr(bitxor(asc(onename),49))
        endfor
        c=fputs(handle,newname)     &&将用户名加密保存到文件中
        
        =fclose(handle)
        messagebox('文件生成完毕!',64,"系统提示")
    endif
搜索更多相关主题的帖子: 一窍不通 用户名 序列号 加密 
2013-08-08 19:37
scilent
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
帖 子:285
专家分:1399
注 册:2011-8-9
得分:0 
很好很强大,这个得到不是硬盘序列号,应该是卷序列号

在没有路的地方走一条路,让别人有路可走
2013-08-08 22:06
scilent
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
帖 子:285
专家分:1399
注 册:2011-8-9
得分:0 
老大就是老大,果然不一般

在没有路的地方走一条路,让别人有路可走
2013-08-08 23:53
scilent
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
帖 子:285
专家分:1399
注 册:2011-8-9
得分:0 
运行一下试了试,行了,谢谢老大

[ 本帖最后由 scilent 于 2013-8-9 00:09 编辑 ]

在没有路的地方走一条路,让别人有路可走
2013-08-08 23:59



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-418818-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.100173 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved