接上面的帖子 通过查找句柄点击的方法 已经完成了 UUC.exe再 show模式下的安装 可是 换成hide的时候 却是无法隐藏了 郁闷
贴出我简单写的代码 ===
program Project1;uses
Forms,shellapi,windows,messages,dialogs;
var handleuuc:hwnd;
handleuuc1:hwnd;
handleuuc2:hwnd;
handleuuc3:hwnd;
handleuuc4:hwnd;
handleuuc5:hwnd;
begin
Application.Initialize;
ShellExecute(0, 'open','uuc.exe','-s',nil, SW_hide);
//ShellExecute(0, 'open','uuc.exe','-s',nil, SW_hide);
sleep(1000);
handleuuc:=findwindow(nil,'UUSee 网络电视 2008') ;
if handleuuc<>0 then
begin
handleuuc1:=FindWindowEx(handleuuc,0,nil,'下一步(&N) >') ;
sendmessage(handleuuc1, WM_LBUTTONDOWN, MK_LBUTTON, 0);
sendmessage(handleuuc1, WM_LBUTTONUP, MK_LBUTTON, 0); //点击下一步
sleep(1000);
handleuuc2:=findwindowEx(handleuuc,0,nil,'我同意(&I)') ;
if handleuuc2<>0 then
begin
sendmessage(handleuuc2, WM_LBUTTONDOWN, MK_LBUTTON, 0);
sendmessage(handleuuc2, WM_LBUTTONUP, MK_LBUTTON, 0);//点击同意
handleuuc3:=findwindowex(handleuuc,0,nil,'下一步(&N) >') ;
sleep(1000);
handleuuc4:=findwindowex(handleuuc,0,nil,'安装(&I)') ;
sleep(300);
if handleuuc4<>0 then
begin
sendmessage(handleuuc4, WM_LBUTTONDOWN, MK_LBUTTON, 0);
sendmessage(handleuuc4, WM_LBUTTONUP, MK_LBUTTON, 0);
//showmessage('找到句柄handleuuc3');
sleep(18000);
handleuuc5:=findwindowex(handleuuc,0,nil,'完成(&F)') ;
if handleuuc5<>0 then begin
sendmessage(handleuuc5, WM_LBUTTONDOWN, MK_LBUTTON, 0);
sendmessage(handleuuc5, WM_LBUTTONUP, MK_LBUTTON, 0);
end
else
sleep(300);
handleuuc5:=findwindowex(handleuuc,0,nil,'完成(&F)') ;
sendmessage(handleuuc5, WM_LBUTTONDOWN, MK_LBUTTON, 0);
sendmessage(handleuuc5, WM_LBUTTONUP, MK_LBUTTON, 0); end
else
showmessage('not finded handle4');
end
else
showmessage('未找到同意句柄');
end
else
begin
showmessage('未找到handleuuc句柄');
end;
Application.Run;
end.
====
注 用showmessage() 是为了测试程序的流程问题
现在该如何操作呢 下面加上命令 就无法隐藏打开 uuc.exe了 我加上了 调用shellapi -s参数 了 可还是不行
贴出我简单写的代码 ===
program Project1;uses
Forms,shellapi,windows,messages,dialogs;
var handleuuc:hwnd;
handleuuc1:hwnd;
handleuuc2:hwnd;
handleuuc3:hwnd;
handleuuc4:hwnd;
handleuuc5:hwnd;
begin
Application.Initialize;
ShellExecute(0, 'open','uuc.exe','-s',nil, SW_hide);
//ShellExecute(0, 'open','uuc.exe','-s',nil, SW_hide);
sleep(1000);
handleuuc:=findwindow(nil,'UUSee 网络电视 2008') ;
if handleuuc<>0 then
begin
handleuuc1:=FindWindowEx(handleuuc,0,nil,'下一步(&N) >') ;
sendmessage(handleuuc1, WM_LBUTTONDOWN, MK_LBUTTON, 0);
sendmessage(handleuuc1, WM_LBUTTONUP, MK_LBUTTON, 0); //点击下一步
sleep(1000);
handleuuc2:=findwindowEx(handleuuc,0,nil,'我同意(&I)') ;
if handleuuc2<>0 then
begin
sendmessage(handleuuc2, WM_LBUTTONDOWN, MK_LBUTTON, 0);
sendmessage(handleuuc2, WM_LBUTTONUP, MK_LBUTTON, 0);//点击同意
handleuuc3:=findwindowex(handleuuc,0,nil,'下一步(&N) >') ;
sleep(1000);
handleuuc4:=findwindowex(handleuuc,0,nil,'安装(&I)') ;
sleep(300);
if handleuuc4<>0 then
begin
sendmessage(handleuuc4, WM_LBUTTONDOWN, MK_LBUTTON, 0);
sendmessage(handleuuc4, WM_LBUTTONUP, MK_LBUTTON, 0);
//showmessage('找到句柄handleuuc3');
sleep(18000);
handleuuc5:=findwindowex(handleuuc,0,nil,'完成(&F)') ;
if handleuuc5<>0 then begin
sendmessage(handleuuc5, WM_LBUTTONDOWN, MK_LBUTTON, 0);
sendmessage(handleuuc5, WM_LBUTTONUP, MK_LBUTTON, 0);
end
else
sleep(300);
handleuuc5:=findwindowex(handleuuc,0,nil,'完成(&F)') ;
sendmessage(handleuuc5, WM_LBUTTONDOWN, MK_LBUTTON, 0);
sendmessage(handleuuc5, WM_LBUTTONUP, MK_LBUTTON, 0); end
else
showmessage('not finded handle4');
end
else
showmessage('未找到同意句柄');
end
else
begin
showmessage('未找到handleuuc句柄');
end;
Application.Run;
end.
====
注 用showmessage() 是为了测试程序的流程问题
现在该如何操作呢 下面加上命令 就无法隐藏打开 uuc.exe了 我加上了 调用shellapi -s参数 了 可还是不行
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货