在看雪论坛看见了这个游戏,其实是很早以前DOS下游戏“天蚕变”的翻版。下的版本和帖子上的版本不一样,因此原来提供的注册机不能用。发现是机器码的长度变长了。照着原来的思路从新调试了一回。附上注册机
看雪论坛原帖的链接。下面的代码和原来的还是有点细微的差别的,请注意观察。
http://bbs.pediy.com/showthread.php?t=42499
#include "stdio.h"
#include "conio.h"
#include "string.h"
void main()
{
char username[50],s[100];
__int64 machinecode, sum=0;
unsigned long sum1, temp=0,i;
//printf("%d",sizeof(char));
printf("please input machinecode/n");
scanf("%I64u",&machinecode);
printf("please input username/n");
scanf("%s",&username);
sum1 = 0;
//strcpy(username, "yanfei");
for(i=0;i<strlen(username) ;i++)
{
temp=(unsigned char)username[i];
temp<<=(i+1);
sum1+=temp;
}
sum = sum1;
sum^=username[strlen(username)-1]* 10000000; //0x989680;
sum+=machinecode;
sum+=1977030518; //0x75d71776;
sprintf(s,"%I64u",sum);
printf("code: 1234567890123456414");
i=0;
while(s[i]!=0)
{
printf("0");
putchar(s[i++]);
}
printf("/n");
getch();
}