delphi webbrower与 sendmessage的问题
发布网友
发布时间:2022-04-27 00:03
我来回答
共5个回答
热心网友
时间:2022-06-20 20:09
那你可以这样发送字符串,用for loop,我试过了,可以用的 ~
for i := 1 to length(zh) do
SendMessage(bt,WM_CHAR,Integer(zh[i]),0);
热心网友
时间:2022-06-20 20:10
不用再浪费时间了,那个输入框是被腾讯保护起来的,不会像一般的文本框一样的。
热心网友
时间:2022-06-20 20:10
这么容易就能得到控件句柄,那不知道又有多少QQ被盗了。。。
热心网友
时间:2022-06-20 20:11
怎么都是没悬赏分的?
热心网友
时间:2022-06-20 20:11
x, y, m : integer;
lpWnd : THandle;
lpName : pchar;
begin
x := 100; y := 80;
getMem(lpName, 100);
fillchar(lpName[0], 100, 0);
lpWnd := webBrowser1.Handle;
while s <> 'Internet Explorer_Server' do begin
lpWnd := GetWindow(lpWnd, 5);
fillchar(lpName[0], 100, 0);
GetClassName(lpWnd, lpName,100);
end;
freeMem(lpName, 100);
m := (y shl 16) or x;
SendMessage(lpWnd, WM_LBUTTONDOWN, 0, m);
SendMessage(lpWnd, WM_LBUTTONUP, 0, m);
end;
这个代码功能其实还比较简单,
一是通过WebBrower控件的类名称查询,找到IE控件的对应句柄,,
二是通过上面的句柄,向该IE发送一个点击消息(即模拟鼠标,一个鼠标按下,一个鼠标弹起,并给出位置),