资源简介

本DLL是我用一个晚上的时间写的,大家可以用来写自己的注册软件。没有任何限制,请大家请心使用!本DLL可以读取硬盘物理序列号、CPU序列号、支持MD5、DES,还有一个通过硬盘与CPU的序列号产生的序列号。用这个序列号大家可以做自己的共享软件!

资源截图

代码片段和文件信息

//---------------------------------------------------------------------------

#include 
#pragma hdrstop

#include “Main_Unit.h“
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource “*.dfm“
TMainFrm *MainFrm;
HINSTANCE ins;
FARPROC procCPUprocDisk;
typedef char * (__stdcall *TGetStrFun)(LPCSTR);
typedef void (__stdcall *TDes)(char*char*char*int);

TGetStrFun procMD5procSN;
TDes procDes;
//---------------------------------------------------------------------------
__fastcall TMainFrm::TMainFrm(TComponent* Owner)
        : TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TMainFrm::pnltitleMouseDown(Tobject *Sender
      TMouseButton Button TShiftState Shift int X int Y)
{
    // 移动没有标题栏的窗体
    Refresh();
    if(Button == mbLeft)
    {
        ReleaseCapture();
        Perform(WM_SYSCOMMAND 0xF017 0);
    }
}
//---------------------------------------------------------------------------

void __fastcall TMainFrm::btnMenuUpDownClick(Tobject *Sender)
{
    if(btnMenuUpDown->Caption == “6“)
    {
        // 还原窗体
        btnMenuUpDown->Caption = “5“;
        Height = 350;
    }
    else
    {
        // 上卷窗体
        btnMenuUpDown->Caption = “6“;
        Height = 25;
    }
}
//---------------------------------------------------------------------------

void __fastcall TMainFrm::imgLogoMouseDown(Tobject *Sender
      TMouseButton Button TShiftState Shift int X int Y)
{
  ShellExecute(Handle NULL “http://zydlm.wxhc.com.cn“ NULL NULL SW_SHOWNORMAL);        
}
//---------------------------------------------------------------------------

void __fastcall TMainFrm::btnMenuCloseClick(Tobject *Sender)
{
  Close();        
}
//---------------------------------------------------------------------------

void __fastcall TMainFrm::FormCreate(Tobject *Sender)
{
  ins=LoadLibrary(“Reg.dll“);
  if (ins!=NULL)
    btnGet->Enabled =true;
}
//---------------------------------------------------------------------------

void __fastcall TMainFrm::btnGetClick(Tobject *Sender)
{
  if (ins!=NULL)
  {
    //取硬盘序列号的函数
    procDisk=GetProcAddress(ins“ReadPhysicalDrive“);

    //取CPU序列号的函数
    procCPU=GetProcAddress(ins“GetCPUID“);

    //得到DES函数的函数
    procDes=(TDes)GetProcAddress(ins“Des“);

    //得到MD5函数的函数
    procMD5=(TGetStrFun)GetProcAddress(ins“GetMD5Str“);

    //产生序列号
    procSN=(TGetStrFun)GetProcAddress(ins“CreateSerialNumber“);

    if ((procDisk)&&(procDes)&&(procCPU)&&(procMD5))
    {
      char *p;
      char buf[128];

      //取硬盘序列号
      p=(char*)procDisk();
      edtDiskID->Text=p;

      edtDiskDes->Text=procMD5(edtDiskID->Text.c_str());
//      procDes(pbuf“2004“0);
//      edtDiskDes->Text=buf;

      //取CPU序列号
      p=(char*)procCPU();
      edtCPU->Text=p;

      edtCPUDes->Text=procMD5

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     目录          0  2004-02-26 20:52  RegDemo

     文件        695  2004-02-26 20:53  RegDemo\Reg.h

     文件     320000  2004-02-26 20:03  RegDemo\Reg.dll

     文件       3614  2004-02-25 05:57  RegDemo\RegDemo.bpr

     文件       2436  2004-02-26 20:03  RegDemo\Reg.lib

     文件       1079  2004-02-25 05:43  RegDemo\RegDemo.cpp

     文件      73090  2004-02-26 20:09  RegDemo\Main_Unit.dfm

     文件        876  2004-02-25 05:57  RegDemo\RegDemo.res

     文件       4076  2004-02-26 20:11  RegDemo\Main_Unit.cpp

     文件       2075  2004-02-26 20:09  RegDemo\Main_Unit.h

     文件         85  2003-11-27 12:12  RegDemo\_delete_Temp.bat

     文件     611840  2004-02-26 20:11  RegDemo\RegDemo.exe

     文件        314  2004-02-26 20:54  RegDemo\说明.txt

----------- ---------  ---------- -----  ----

              1020180                    13


评论

共有 条评论