delphi 后台模拟鼠标点击

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了delphi 后台模拟鼠标点击相关的知识,希望对你有一定的参考价值。

procedure TForm1.Timer1Timer(Sender: TObject);
var
Window: HWND;
PHND: THandle;
begin
Window := findwindow(nil, pchar('未命名 - 画图'));
if Window <> 0 then
begin
SendMessage(Window, WM_LBUTTONDOWN, MK_LBUTTON, makelparam(300,300));
SendMessage(Window, WM_LBUTTONUP, MK_LBUTTON, makelparam(300,300));
end;
end;
这段代码怎么对画板窗口没反映了,错再哪里了?、

procedure TForm1.FormCreate(Sender:TObject);
function MyFindWindow:THandle;
const
A_szClassName:array[0..2] of PChar=(
'MSPaintApp',
'AfxFrameOrView42u',
'Afx:1000000:8'
);
var
i:Integer;
hLastWin:THandle;
begin
hLastWin:=FindWindow(A_szClassName[0],nil);
for i:=1 to 2 do
begin
hLastWin:=FindWindowEx(hLastWin,THandle(nil),
A_szClassName[i],nil);
end;
result:=hLastWin;
end;
var
h:THandle;
begin
h:=MyFindWindow();
SendMessage(h, WM_LBUTTONDOWN, MK_LBUTTON, makelparam(300,300));
SendMessage(h, WM_LBUTTONUP, MK_LBUTTON, makelparam(300,300));
end;
参考技术A delphi
后台键盘和鼠标的模拟操作,可以使用
sendmessage

postmessage
函数,通过发送鼠标动作消息来完成模拟操作。
需要提示的是,如果是对游戏进行后台操作,由于游戏的反外挂机制,可能会屏蔽这种办法(比如,会检测窗口是否在前台等),会使这种办法无效。

如何在WPF中模拟鼠标点击

参考技术A 在mousedown的事件里判断

if(e.ClickCount == 2)

//双击时执行
本回答被提问者和网友采纳

以上是关于delphi 后台模拟鼠标点击的主要内容,如果未能解决你的问题,请参考以下文章

DelPhi怎样模拟鼠标单击?

vb后台模拟鼠标点击网页

在后台窗口中模拟鼠标点击

如何模拟后台鼠标点击功能? SendMessage 和PostMessage 都无效。

如何写一个脚本模拟鼠标左键连续点击后台网页链接

用postmessage模拟后台鼠标点击的问题