SendKeys
方法發送一個或多個擊鍵到活動窗口。首先使用AppActivate
方法激活您的應用程序窗口。
該腳本是你的一個簡化版本,沒有8分鐘循環和notepad.exe
而不是你的應用程序名稱。
option explicit
On Error Goto 0
Dim antiafk
set antiafk=createobject("wscript.shell")
Dim lngPID, booSuccess, foo
lngPID = getlngPID()
If lngPID = 0 Then
foo = antiafk.Popup("No instance found", 5, _
"29445451", vbOKOnly + vbCritical)
Else
booSuccess = antiafk.AppActivate(lngPID)
If not booSuccess Then
foo = antiafk.Popup("AppActivate Method unsuccesfull", 5, _
"29445451", vbOKOnly + vbExclamation)
Else
antiafk.sendkeys "w"
End If
End If
Function getLngPID()
getLngPID = 0
Dim strComputer
Dim objWMIService, colProcessList, objProcess
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colProcessList = objWMIService.ExecQuery _
("Select * from Win32_Process Where Name = 'Notepad.exe'")
'find appropriate and suitable Process ID
For Each objProcess in colProcessList
getLngPID = objProcess.ProcessId
Next
End Function
在執行此操作之前,您可能需要檢查EULA,因爲在許多遊戲中不允許使用AFK宏。 – Bob 2015-04-05 02:43:37