_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