|
发表于 2012-6-1 09:36:53
|
显示全部楼层
int x,y,hwnd,hwnd1
while(true)
//这里写你打开的代码
hwnd=dm.FindWindowByProcess("xxxx.exe","","") ------------------这里你的窗口无标题 只好用大漠的收费功能用进程名找你图里的界面的窗口 xxxx.exe 指的是打开进程之后的登陆界面的进程 ----------------
help.sleep(200)
if(hwnd!==0) -----------如果找到了
dm.SetWIndowState(hwnd,1) -----------激活它
help.sleep(200)
dm.MoveWindow(hwnd,0,0) -----------移动到屏幕左上角 避免你拉到看不见确定的地方导致后面死循环
break ---------跳出这个循环因为它已经存在了,如果不存在则回到循环首再次打开进程
endif
endwhile
//下面进入下一个步骤
while(true) ----------定义一个循环保证进入下一步操作才跳出
help.sleep(500) -------------这里加延迟避免你点击确定 完全进游戏之前 游戏客户端进程没出现的真空期 循环无延迟导致cpu暴涨
hwnd1 = dm.FIndWindowByProcess("xxxxxxxxxxxxxx.exe","","") ----------------这里是指点了确定之后 到登陆界面的真正游戏客户端进程名
if(hwnd1!==0)
break ------------找到了游戏真正客户端说明执行完了 跳出
else -------------没找到就找你那个图里的界面的确定 点击他进入游戏
dm.FindStr(0,0,2000,2000,"确定","xxxxxx-xxxxxx",1.0,x,y) -----------------这里xxxxxx-xxxxxx 是你确定这2个字的基色和色偏 确定要自己提取点阵写到大漠的字库里 ----------------
if(x>0) ----------找到了
dm.MoveTo(x+5,y+5) ---------移动到确定图标上
help.sleep(200) ----------延迟200毫秒
dm.LeftClick() ----------左键单击
endif
endif
endwhile
排版有点乱就在回复里编辑的 见谅
|
|