⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 unit1.cpp

📁 用BCB6.0 生成序列号 和 例子 版权属于ccrun老妖
💻 CPP
字号:
//---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop

#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{
}
//---------------------------------------------------------------------------

void __fastcall TForm1::BitBtn1Click(TObject *Sender)
{
        if(BitBtn1->Caption=="生成(&G)")
        {
                BitBtn1->Caption="停止(&S)";
                ListBox1->Items->Clear();
                isMark=true;

                while(isMark==true)
                {
                Application->ProcessMessages();
                int Box[16];
                //第1-4个字符
                Box[0]=87; //W
                Box[1]=79; //O
                Box[2]=89; //K
                Box[3]=69; //E

                //产生第5-8个字符
                do
                {
                        Box[4]=RandomChar();
                        Box[5]=RandomChar();
                        Box[6]=RandomChar();
                        Box[7]=RandomChar();
                }while(Arithmetic(Box[4],Box[5],Box[6],Box[7],15)!=1);

                //产生第9-12个字符
                do
                {
                        Box[8]=RandomChar();
                        Box[9]=RandomChar();
                        Box[10]=RandomChar();
                        Box[11]=RandomChar();
                }while(Arithmetic(Box[8],Box[9],Box[10],Box[11],15)!=2);

                //产生第13-16个字符
                do
                {
                        Box[12]=RandomChar();
                        Box[13]=RandomChar();
                        Box[14]=RandomChar();
                        Box[15]=RandomChar();
                }while(Arithmetic(Box[12],Box[13],Box[14],Box[15],15)!=3);

                //输出注册码
                Edit1->Clear();
                for(int i=0; i<=15; i++)
                {
                        Edit1->Text=Edit1->Text+(char)Box[i];
                        if((i+1)%4==0 && i<15)
                                Edit1->Text=Edit1->Text+"-";
                }
                ListBox1->Items->Add(Edit1->Text);
                }
        }
        else
        {
                BitBtn1->Caption="生成(&G)";
                isMark=false;
        }
}
//---------------------------------------------------------------------------

bool TForm1::CheckTheChar(int AsciiChar)
{
        if((AsciiChar>=48 && AsciiChar<=57) || (AsciiChar>=65 && AsciiChar<=90))
                return true;
        else
                return false;
}

//---------------------------------------------------------------------------
int TForm1::RandomChar()
{
        int Num;
        do
        {
                Num=random(90);
        }while (CheckTheChar(Num)==false);
        return Num;
}

//---------------------------------------------------------------------------
int TForm1::Arithmetic(int Num1 , int Num2 , int Num3 , int Num4 , int Value)
{
        int Sum;
        Sum=Num1+Num2+Num3+Num4;
        return (Sum % Value);
}
void __fastcall TForm1::FormCreate(TObject *Sender)
{
        isMark=true;
}
//---------------------------------------------------------------------------

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -