游戏外挂制作实例1

扫雷游戏外挂实例。

实现功能:

1再菜单中添加自动完成菜单。

2显示鼠标当前位置是否为雷。

  

源代码分为两部分。

1app部分

main.h

 

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

#ifndef mainH
#define  mainH
// ---------------------------------------------------------------------------
#include  < Classes.hpp >
#include 
< Controls.hpp >
#include 
< StdCtrls.hpp >
#include 
< Forms.hpp >
#define  WM_MYHOOK   (WM_APP +1024)
// ---------------------------------------------------------------------------
class  TForm1 :  public  TForm
{
__published:    
//  IDE-managed Components
    TButton  * Button2;
    TButton 
* Button3;
    
void  __fastcall FormCreate(TObject  * Sender);
    
void  __fastcall Button2Click(TObject  * Sender);
    
void  __fastcall Button3Click(TObject  * Sender);
private :     //  User declarations
    HINSTANCE hDLL;
    HWND hHookedWindow;
    unsigned 
long  MineHeight;            // 雷区高度起始地址
    unsigned  long  MineWidth;             // 雷区?度起始地址
    unsigned  long  MineStartAddress;      // 雷区内容起始地址,依次是0x01005361+高*32+?
     void  __fastcall WMMYHOOK(TMessage &  Message);
public :         //  User declarations
    __fastcall TForm1(TComponent *  Owner);

BEGIN_MESSAGE_MAP
    MESSAGE_HANDLER(WM_MYHOOK, TMessage, WMMYHOOK);
END_MESSAGE_MAP(TForm);
};
// ---------------------------------------------------------------------------
extern  PACKAGE TForm1  * Form1;
// ---------------------------------------------------------------------------
#endif

 

main.cpp

 

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

#include 
< vcl.h >
#pragma  hdrstop

#include 
" main.h "
// ---------------------------------------------------------------------------
#pragma  package(smart_init)
#pragma  resource "*.dfm"
TForm1 
* Form1;
typedef 
int  (WINAPI *  sthndl)(HWND,HWND);
sthndl SetHandle;
typedef 
int  (WINAPI *  unsub)();
unsub UnSubClass;
// ---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent *  Owner)
    : TForm(Owner)
{
    hDLL 
=  NULL;
    MineHeight       
=   0x01005338 ;
    MineWidth        
=   0x01005334 ;
    MineStartAddress 
=   0x01005361 ;
}
// ---------------------------------------------------------------------------
void  __fastcall TForm1::FormCreate(TObject  * Sender)
{
    hDLL
= LoadLibrary((LPCTSTR) " ShaoLeiWaiGua.dll " );
    
if (hDLL == NULL){
        exit(
1 );
    }
    hHookedWindow 
=  FindWindow(NULL, " マインスイーパ " );
    SetHandle 
=  (sthndl)GetProcAddress(hDLL,  " SetHandle " );
    UnSubClass 
=  (unsub)GetProcAddress(hDLL,  " UnSubclass " );
}
// ---------------------------------------------------------------------------
void  __fastcall TForm1::Button2Click(TObject  * Sender)
{
    hHookedWindow 
=  FindWindow(NULL, " マインスイーパ " );
    
if (hHookedWindow  ==  NULL){
        hHookedWindow 
=  FindWindow(NULL, " Minesweeper " )
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值