如何编写能够按另一个程序窗体中按钮的程序(100分)

  • 主题发起人 主题发起人 wush
  • 开始时间 开始时间
W

wush

Unregistered / Unconfirmed
GUEST, unregistred user!
如何用Delphi编写一个程序,能够自动按另一个程序窗体中的按钮。
例、 当前出现一个程序的登陆窗体,此时用户必须输入用户名和密码后按“确定

”按钮进行登陆方可使用该程序。如何编写一个程序,实现出现该登陆框时不须

用户按下“确定”按钮而自动按下该“确定”按钮,实现自动登陆。
 
找到它的 Handle,给他发送按键消息
 
以前别人的解答,我没测试。

function EnumWindowsProc(AHWnd: HWnd; LPARAM: lParam): boolean; stdcall;
var
WndCaption: array[0..254] of char;
WndClassName: array[0..254] of char;
rtscreen: trect;
WinXY:TRect;
xy:TPoint;
begin
GetWindowText(AHWnd, @WndCaption, 254);
GetClassName(AHWnd, @WndClassName, 254);
if (pos('CashSurfers.com',wndcaption)<>0) then //用你已知的窗口标题替换这里, 找到此窗口
begin
ahwnd:=findwindowEX(ahwnd,0,pchar('TButton'),pchar('Cool!')); // 找到窗口上的按钮
GetWindowRect(AHWnd,WinXY); // 得到按钮的坐标范围
xy:=WinXY.TopLeft; // 取得按钮左上角的坐标
xy.x:=xy.x+10;
xy.y:=xy.y+10;
SetCursorPos(xy.x,xy.y); // 将Mouse定位到按钮上
Mouse_Event(MOUSEEVENTF_LEFTDown,xy.x,xy.y,0,0); // 按下左键
Mouse_Event(MOUSEEVENTF_LEFTUP, xy.x,xy.y,0,0); // 按下右键
end;
Result := True ;
end;
 
对,找到它的 Handle,给他发送按键消息!唉!又来晚了一步!:<
 
你可以利用模块来实现
 
接受答案了.
 
后退
顶部