0

我有一个小脚本,基本上每 4 分钟按一次“F2”,持续 8 小时用于活动应用程序。

它很有效,而且非常基础,因为我在 VB 中的技能非常有限。

我现在想到了该项目的新内容,但不知道是否可行或如何解决。

我基本上想要一个显示计时器的小窗口以及一个暂停和恢复和停止按钮。如果我可以像在另一个应用程序中一样拥有这些按钮,那将是一个巨大的优势,我不想按下 F2 按钮。

这是我所拥有的:

Dim WshShell

Set WshShell = CreateObject("WScript.Shell")

dim ti
ti=timer

Do

WshShell.SendKeys "{F2}"

For AA = 1 To 9

  IF AA = 8 Then BB = "in  30 seconds"
  IF AA = 9 Then BB = "now !"

WScript.Sleep 30000

Dim oShell
Set oShell= CreateObject("Wscript.Shell")
IF AA = 8 OR AA = 9 Then oShell.Popup " Refresh ... " & BB & " ",2,"Remind"

Next 

Loop while (timer-ti)<8*60*60

MsgBox "VB End: " & Time()

谢谢

4

1 回答 1

1

好的,只是一个高水平的答案,因为已经很晚了,我要去睡觉了。

在您的表单上,放置一个计时器控件。将其设置为 1000 间隔(1 秒)。
也放置您的开始和暂停按钮。
这是将运行它的代码。

Dim IsRunning As Boolean

Private Sub cmdPause_Click()
    IsRunning = False
End Sub

Private Sub cmdStart_Click()
    IsRunning = True
End Sub

Private Sub Timer1_Timer()
    Static LastTime As Date
    If IsRunning Then
        If DateDiff("n", lastdate, Now()) >= 4 Then
            'sendkeys
            LastTime = Now()
        End If
    End If
End Sub

IsRunning变量位于任何过程之外,称为共享变量。此表单中的任何程序都可以看到它。开始和暂停按钮将其值变为真或假。

Timer 事件将每秒运行一次。在这里,我们正在检查 IsRunning 是否为真,以及 4 分钟是否已过期。如果是这样,那么您可以运行您的 sendkeys。

于 2013-06-02T05:56:58.237 回答