好友
阅读权限40
听众
最后登录1970-1-1
|
本帖最后由 冥界3大法王 于 2023-9-5 09:09 编辑
#新增:快速点按,断与不断
1)设置热键
2)InputBox以便输出相关断点
3)模拟点击左键
mouse_event(MOUSEEVENTF_LEFTDOWN,0,0,0,0);
mouse_event(MOUSEEVENTF_LEFTUP,0,0,0,0);
4)设置断点
5) 延迟几秒
6)取消断点
适用场合,譬如,我屏幕上有个按钮:
- 我要点击这个按钮
- 我还要使用Settimer下断点
- 但是我来不及回来取消断点
- 但是我要先设置断点,来不及再来点外面的按钮
- Settimer位于一个循环中
- 既要断下来,还要求马上取消掉,还要点了按钮,以便继续往下走
- 虽然可以使用x64dbg句柄中相关解决,但多了一种途径嘛。
于是上面的Delphi代码就问空出世了,经插件测试完全可行啊。
这表达的好纠结。
[Delphi] 纯文本查看 复制代码 if (GetAsyncKeyState(VK_SHIFT) < 0) and (GetAsyncKeyState(VK_MENU) and (GetAsyncKeyState(Ord('2'))) < 0) then //Shift+Alt+2
begin //新增:快速点按,断与不断
InputString := InputBox('一个必然能中断下来的函数:', '请输入', 'SetTimer');
if InputString <> '' then
begin
Delay(3000); //延迟为了点按钮
mouse_event(MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0); //按下左键
mouse_event(MOUSEEVENTF_LEFTUP, 0, 0, 0, 0); //弹起左键
DbgCmdExec(PAnsiChar(AnsiString('SetBPX ' + InputString)));
Delay(1000); //延迟1秒
DbgCmdExec(PAnsiChar(AnsiString('DeleteBPX ' + InputString))); //取消断点x64dbg就会自己自动往下走啦~~
end;
end; |
|
发帖前要善用【论坛搜索】功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。 |
|
|
|
|