从窗口句柄获取进程句柄并终止进程GetWindowThreadProcessID

_GetODProcID    proc
LOCAL   @hWinOD             ;窗口句柄
LOCAL   @hProcessOD          ;进程句柄
LOCAL   @idProcessOD         ;进程ID
invoke FindWindow,addr szClassName,NULL ;通过类名获取窗口句柄               
.if eax     ;找到
      mov       @hWinOD,eax        ;窗口句柄
      invoke MessageBox,NULL,offset szFound,offset szCaption,MB_ICONWARNING ;检测到OD提示        
      invoke    GetWindowThreadProcessId,@hWinOD,addr @idProcessOD   ;获取进程ID在@idProcessOD里
      invoke    OpenProcess,PROCESS_TERMINATE,TRUE,@idProcessOD      ;获取进程句柄在返回值里
      .if    eax                     ;获取句柄成功
         mov       @hProcessOD,eax
         invoke    TerminateProcess,@hProcessOD,200           ;终止进程
         invoke CloseHandle,@hProcessOD                    ;关闭进程句柄
         invoke    MessageBox,NULL,addr szClose,addr szMerry,MB_OK
      .else                          ;获取句柄失败
         invoke    MessageBox,NULL,addr szFail,addr szCaption,MB_ICONWARNING
      .endif    
   .else               ;没找到目标窗口
       invoke MessageBox,NULL,offset szNotFound,offset szMerry,MB_OK
   .endif      
   ret

_GetODProcID endp

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值