VB 模拟IE某窗口在按键消息

来源:百度知道 编辑:UC知道 时间:2024/07/02 20:11:59
首先说下用途,因为参加网上的一个在线学习课程,打开一个视频课程页面听课,如果在一定时间内,不在该窗口上有任何操作,就会自动关闭.我想写一个程序在后台运行,模拟该页面的按键,使之不自动关闭,想用进程与句柄的方法进行操作,但没得这方面的经验,请高手指点.
如果能附上相关代码\函数说明及程序流程和思路,我再加分
以下是页面的判断代码.
<SCRIPT LANGUAGE="JavaScript">
// sec 用来控制自动注销时间的秒数
var sec=0;
idt=window.setTimeout("update();",1000);
function update(){
sec++;
if(sec>=900)
{
window.close();
}
idt=window.setTimeout("update();",1000);
}

function doMouseMove() {
sec = 0;
}
document.onmousemove = doMouseMove;
document.onkeypress = doMouseMove;
document.onmousedown = doMouseMove;
</SCRIPT>
补充一下,我只会用VB,JAVA和VC还不熟悉.

给窗体加个定时器

private Type RECT
Left As Long
Top As Long
Right As Long
Bottom As Long
End Type '鼠标的坐标
private Declare Function ClipCursor Lib "user32" (lpRect As RECT) '用来吧鼠标定位到ie上
private Declare Sub mouse_event Lib "user32" Alias "mouse_event" (ByVal dwFlags As Long, ByVal dx As Long, ByVal dy As Long, ByVal cButtons As Long, ByVal dwExtraInfo As Long) '用来模拟鼠标点击

private sub timer1_timer()
dim r as rect
r.left=?
r.top=?
r.right=?
r.bottom=?
'具体数值由你调试的时候设定,一般只要限定在ie窗口内即可
ClipCursor r
mouse_event MOUSEEVENTF_LEFTDOWN Or MOUSEEVENTF_LEFTUP, 0, 0, 0, 0 '模拟单击
r.left=0
r.top=0
r.right=0
r.bottom=0 '置0,取消限制鼠标范围限制
clipCursor r
end sub

这样就可以了,MOUSEEVENTF_LEFTDOWN 和 MOUSEEVENTF_LEFTUP这两个常数你可以查api库

Private Declare Function SetCursorPos Lib "user32" (ByVal x As Long, ByVal y As Long) As Long