汇编写的QQ小工具

. 386  
. model flat , stdcall 
option casemap
:none  

;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
;         Include 数据
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
include windows
. inc 
include kernel32
. inc 
include shell32
. inc
include 
debug . inc
includelib kernel32
. lib 
include user32
. inc 
includelib user32
. lib 
includelib shell32
. lib
include Libc
. inc
includelib LIBC
. LIB

;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
;         Equ 数据 RC资源
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>


DLG_MAIN        equ             
1000
IDC_EDT         equ             
1004
IDC_IDOK        equ             
1005
IDC_IDCHAT      equ        
1009
IDC_EDTQQ     equ        
1008
IDC_EDTFIRE    equ        
1010
IDC_IDFIRE    equ        
1011


;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

. data 


. data?

ls db 
10  dup  ( ? )

sextemp db 
10  dup  ( ? )
qqtemp     db 
10  dup  ( ? )
temp    db 
70  dup  ( ? )
num     UINT    ?
hg       dword    ?
lp    dword   ?



hInstance HINSTANCE ?  

. code 

; ********************************************************************
_ProcDlgMain        proc        uses ebx edi esi
,  
                hWnd
:DWORD , wMsg :DWORD , wParam :DWORD , lParam :DWORD
                
                
                
     LOCAL hwnd
, hwnd1 , hwnd2 , hwnd3 , hwnd4 , hwnd5 , idx
              
        mov eax
, wMsg
    
        cmp eax
, WM_CLOSE
        je  boxClose
        cmp eax
, WM_INITDIALOG
        je  boxStart
        cmp eax
, WM_COMMAND
        je commoand
   
   retFalse:
           mov        eax
, FALSE
           ret    
                  
   boxClose:
          invoke EndDialog
, hWnd , NULL
          jmp retTrue
          
   boxStart:
          
              invoke SetWindowPos
, hWnd , HWND_TOPMOST , 0 , 0 , 0 , 0 ,  SWP_NOMOVE or SWP_NOSIZE  ; 窗口置顶
              jmp retTrue
                   
   commoand:
           mov eax
, wParam
        
    
. if  eax  ==  IDC_IDOK
          
           invoke  FindWindow
, CTEXT ( " #32770 " ),  CTEXT ( " QQ2007设置 " )
         
          
. if  eax == 0
             
          invoke  FindWindow
, CTEXT ( " #32770 " ),  CTEXT ( " QQ2006设置 " )
             
          
. endif
          
          
. if  eax == 0
              
              invoke FindWindow
, CTEXT ( " #32770 " ), CTEXT ( " QQ2007 7.0 设置 " )
          
. endif
         
          
        
. if  eax! = 0
           
             mov hwnd
, eax
              
             invoke   FindWindowEx 
, hwnd ,   0 ,  CTEXT ( " #32770 " ),   0
               
             mov hwnd1
, eax
               
             invoke   FindWindowEx 
, hwnd1 ,   0 ,  CTEXT ( " #32770 " ),   0
                
              mov hwnd2
, eax
                
             invoke    GetDlgItem 
, hwnd2 ,   1356
                
              mov hwnd3
, eax
               
             invoke    GetDlgItem 
, hwnd2 ,   1345
                
             mov hwnd4
, eax
               
             invoke    GetDlgItem 
, hwnd1 ,   1343
               
              mov hwnd5
, eax
             
              invoke SendMessage
, hwnd3 , 32 , 0 , 0
              
              invoke GetDlgItemText
, hWnd , IDC_EDT  , addr sextemp , 10    ; 取用户输入到文本
              
              invoke SendMessage
, hwnd3 , 323 , 0 ,  addr sextemp
              
              mov idx
, eax
              
             invoke SendMessage
, hwnd3 , 334 , idx , 0
             
             invoke   SendMessage 
, hwnd4 ,   13 ,   10 , addr ls
             
             invoke  SendMessage 
, hwnd4 ,   12 ,   0 ,  addr ls
             
             invoke SendMessage
, hwnd5 ,   245 ,   0 ,   0

             jmp retTrue
               
               
          
. else
          
      
            invoke MessageBox
, 0 , CTEXT ( " 请先打开QQ个人设置窗口! " ), CTEXT ( " 提示 " ), MB_OK    
          
      
. endif  
             
  
. endif
  
. if     eax ==  IDC_IDCHAT
      invoke GetDlgItemText
, hWnd , IDC_EDTQQ , addr qqtemp , 10
      
    mov num
, eax
    
    invoke lstrcpy
, addr temp , CTEXT ( " http://wpa.qq.com/msgrd?V=1&Uin= " )
    
    invoke lstrcat
, addr temp , addr qqtemp
    
    invoke lstrcat
, addr temp , CTEXT ( " &Site=ioshenmue&Menu=yes " )
    
    
; invoke MessageBox , NULL , addr temp , CTEXT ( "   " ), MB_OK
    
    invoke ShellExecute
, hWnd , NULL , addr temp , NULL , NULL , SW_HIDE
      
  
. endif
  
  
. if      eax ==  IDC_IDFIRE
      
      
; invoke FindWindow , CTEXT ( " #32770 " ), NULL
      
      
; mov hwnd  , eax
      
      
; invoke FindWindowEx , hwnd , NULL , CTEXT ( " #32770 " ), NULL
      
      
; mov hwnd1 , eax
      
      
; invoke FindWindowEx , hwnd1 , NULL , CTEXT ( " RichEdit20A " ), NULL
      
      
;. if  eax == 0
          
      
;     invoke MessageBox , NULL , CTEXT ( " E " ), CTEXT ( " E " ), MB_OK
      
;. endif
      invoke GetDlgItemText
, hWnd , IDC_EDTFIRE , addr temp , 60
      
      
      invoke  GlobalAlloc
, GPTR , 60
      mov hg
, eax
      invoke GlobalLock
, addr hg
      mov lp
, eax
      invoke memcpy
, addr hg , addr temp , 60
      
      invoke SetClipboardData
, CF_UNICODETEXT , addr lp
      
      
. while  1  
      
      invoke keybd_event
, VK_CONTROL , 0 , KEYEVENTF_EXTENDEDKEY , 0
      invoke keybd_event
, 56h , 0 , KEYEVENTF_EXTENDEDKEY , 0
      invoke keybd_event
, 56h , 0 , KEYEVENTF_EXTENDEDKEY or KEYEVENTF_KEYUP , 0
      invoke keybd_event
, VK_CONTROL , 0 , KEYEVENTF_EXTENDEDKEY or KEYEVENTF_KEYUP , 0
      invoke keybd_event
, VK_CONTROL , 0 , KEYEVENTF_EXTENDEDKEY , 0
      invoke keybd_event
, VK_RETURN , 0 , KEYEVENTF_EXTENDEDKEY , 0
      invoke keybd_event
, VK_RETURN , 0 , KEYEVENTF_EXTENDEDKEY or KEYEVENTF_KEYUP , 0
      invoke keybd_event
, VK_CONTROL , 0 , KEYEVENTF_EXTENDEDKEY or KEYEVENTF_KEYUP , 0
      invoke Sleep
, 500     
      
. endw
 
  
. endif
            
     retTrue:
        
           mov        eax
, TRUE
           ret        

_ProcDlgMain        endp




; ********************************************************************

start :
  invoke GetModuleHandle
, NULL
  mov hInstance
, eax
  invoke DialogBoxParam
, eax , DLG_MAIN , NULL , offset _ProcDlgMain , 0     ; 显示对话框
  invoke ExitProcess
, NULL

; ********************************************************************

end          start
 修改性别 和 强制聊天
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值