只要程序运行就自动打开126.com网站,等过了5分钟后再自动打开163.com网站,等7分钟后再重新打开126.com,就这样循环,也就是说在在13分钟内要打开二个网站,第二个网站必须等7分钟后才能打开,循环操作。
下面是我的测试程序,但只能做到每5分钟就执行打开126.com,不能在打开126.com 后在等7分钟后打开163.com
Option Explicit Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Const TENMINUTE = 300Private Sub Form_Load()Timer1.Interval = 1000
Timer1 = True
End Sub Private Sub Timer1_Timer()
Static lngCount As Long
If lngCount = TENMINUTE Then
prog
lngCount = 0
Else
lngCount = lngCount + 1
End If
End Sub
'执行程序段
Private Sub prog()
Shell "C:\Program Files\Mozilla Firefox\firefox.exe http://126.com", vbHide
End Sub
下面是我的测试程序,但只能做到每5分钟就执行打开126.com,不能在打开126.com 后在等7分钟后打开163.com
Option Explicit Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Const TENMINUTE = 300Private Sub Form_Load()Timer1.Interval = 1000
Timer1 = True
End Sub Private Sub Timer1_Timer()
Static lngCount As Long
If lngCount = TENMINUTE Then
prog
lngCount = 0
Else
lngCount = lngCount + 1
End If
End Sub
'执行程序段
Private Sub prog()
Shell "C:\Program Files\Mozilla Firefox\firefox.exe http://126.com", vbHide
End Sub
然后定义一个strTemp存储一个时间,就可以完成了
Const TENMINUTE = 300
Const TENMINUTE1 = 420
Private Sub Timer1_Timer()
Static lngCount As Long
If lngCount = TENMINUTE Then '300秒,就是5分钟,这时候打开一次
prog
lngCount = 0
Timer1.enable=false
timer1.enable=true
Else
lngCount = lngCount + 1
End If
End Sub '多加一个时间控件,在第一个打开之后,激活,开始7分钟倒计时
Private Sub Timer2_Timer()
Static lngCount As Long
If lngCount = TENMINUTE2 Then '300秒,就是5分钟,这时候打开一次
prog
lngCount = 0
Timer2.enable=false
timer1.enable=true
Else
lngCount = lngCount + 1
End If
End Sub
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Const INTERVEL1 = 300
Const INTERVEL2 = 420
Private mintTotMin As LongPrivate Sub Form_Load()
Timer1.Interval = 1000
Timer1.Enabled = True
Timer2.Interval = 1000
Timer2.Enabled = True
Timer3.Interval = 1000
Timer3.Enabled = True
End SubPrivate Sub Form_Unload(Cancel As Integer)
Timer1.Enabled = False
Timer2.Enabled = False
Timer3.Enabled = False
End SubPrivate Sub Timer1_Timer()
If mintTotMin = INTERVEL1 Then
prog
End If
End Sub
'Ö´ÐгÌÐò¶Î
Private Sub prog()
Shell "D:\Program Files\TheWorld 2.0\TheWorld.exe http://126.com", vbMaximizedFocus
End SubPrivate Sub prog1()
Shell "D:\Program Files\TheWorld 2.0\TheWorld.exe http://163.com", vbMaximizedFocus
End SubPrivate Sub Timer2_Timer()
If mintTotMin = INTERVEL1 + INTERVEL2 Then
prog1
End If
End SubPrivate Sub Timer3_Timer()
If mintTotMin > 0 And (mintTotMin Mod (INTERVEL1 + INTERVEL2) = 0) Then
mintTotMin = 0
Else
mintTotMin = mintTotMin + 1
End If
End Sub
Const TENMINUTE = 5 '这里我故意用10秒
Const TENMINUTE1 = 10 '这里我故意用10秒
Private Sub Form_Load()Timer1.Interval = 1000
Timer1 = True
End SubPrivate Sub Timer1_Timer()
Static lngCount As Long
If lngCount = TENMINUTE Then '300秒,就是5分钟,这时候打开一次
prog
lngCount = 0
Timer1.Enabled = False
Timer1.Enabled = True
Else
lngCount = lngCount + 1
End If
End Sub'多加一个时间控件,在第一个打开之后,激活,开始7分钟倒计时
Private Sub Timer2_Timer()
Static lngCount As Long
If lngCount = TENMINUTE1 Then '300秒,就是5分钟,这时候打开一次
prog1
lngCount = 0
Timer2.Enabled = False
Timer1.Enabled = True
Else
lngCount = lngCount + 1
End If
End Sub '执行程序段
Private Sub prog()
Shell "C:\Program Files\Mozilla Firefox\firefox.exe http://126.com", vbHide
End Sub
'执行程序段
Private Sub prog1()
Shell "C:\Program Files\Mozilla Firefox\firefox.exe http://163.com", vbHide
End Sub
Private m_aTaskWaiting(TASK_COUNT - 1) As Long
Private m_aTaskUrl(TASK_COUNT - 1) As StringPrivate m_TaskID As Long
Private m_CountDown As LongPrivate Sub Form_Load()
m_aTaskWaiting(0) = (5 * 60)
m_aTaskWaiting(1) = (7 * 60)
m_aTaskUrl(0) = "http://126.com"
m_aTaskUrl(1) = "http://163.com"
m_TaskID = 0
m_CountDown = m_aTaskWaiting(m_TaskID) Timer1.Interval = 1000
Timer1 = True
End SubPrivate Sub Timer1_Timer()
m_CountDown = m_CountDown - 1
If m_CountDown <= 0 Then
Shell "C:\Program Files\Mozilla Firefox\firefox.exe " & m_aTaskUrl(m_TaskID), vbHide
m_TaskID = ((m_TaskID + 1) Mod TASK_COUNT)
m_CountDown = m_aTaskWaiting(m_TaskID)
End If
End Sub
Const TENMINUTE = 2 '这里我故意用10秒
Const TENMINUTE1 = 3 '这里我故意用10秒
Private Sub Form_Load() Timer1.Interval = 1000
Timer2.Interval = 1000
Timer1 = True
Timer2 = False
End SubPrivate Sub Timer1_Timer()
Static lngCount As Long
If lngCount = TENMINUTE Then '300秒,就是5分钟,这时候打开一次
prog
lngCount = 0
Timer1.Enabled = False
Timer2.Enabled = True
Else
lngCount = lngCount + 1
End If
End Sub'多加一个时间控件,在第一个打开之后,激活,开始7分钟倒计时
Private Sub Timer2_Timer()
Static lngCount As Long
If lngCount = TENMINUTE1 Then '300秒,就是5分钟,这时候打开一次
prog1
lngCount = 0
Timer2.Enabled = False
Timer1.Enabled = True
Else
lngCount = lngCount + 1
End If
End Sub
'执行程序段
Private Sub prog()
MsgBox "1"Shell "C:\Program Files\Mozilla Firefox\firefox.exe http://126.com", vbHide
End Sub
'执行程序段
Private Sub prog1()
MsgBox "2"Shell "C:\Program Files\Mozilla Firefox\firefox.exe http://163.com", vbHide
End Sub
Const TENMINUTE = 5 '这里我故意用10秒
Const TENMINUTE1 = 7 '这里我故意用10秒
Private Sub Form_Load() Timer1.Interval = 1000
Timer2.Interval = 1000
Timer1 = True
Timer2 = False
End SubPrivate Sub Timer1_Timer()
Static lngCount As Long
If lngCount = TENMINUTE Then '300秒,就是5分钟,这时候打开一次
prog
lngCount = 0
Timer1.Enabled = False
Timer2.Enabled = True Else
lngCount = lngCount + 1
End If
End Sub'多加一个时间控件,在第一个打开之后,激活,开始7分钟倒计时
Private Sub Timer2_Timer()
Static lngCount As Long
If lngCount = TENMINUTE1 Then '300秒,就是5分钟,这时候打开一次
prog1
lngCount = 0
Timer2.Enabled = False
Timer1.Enabled = True
Else
lngCount = lngCount + 1
End If
End Sub
'执行程序段
Private Sub prog()
MsgBox "1"Shell "C:\Program Files\Mozilla Firefox\firefox.exe http://126.com", vbHide
End Sub
'执行程序段
Private Sub prog1()
MsgBox "2"Shell "C:\Program Files\Mozilla Firefox\firefox.exe http://163.com", vbHide
End Sub
请问你们二位这样编译好之后长时间运行会很耗资源吗?因为我想把这个方法用到服务器上定时检测数据库。一般服务器2、3个月重起一次。
你要考虑的是:不断通过命令行调用 firefox.exe,它会不会不断地开出新的窗口或标签页。