gpt4 book ai didi

Windows 脚本 (VBS) 始终使应用程序保持打开状态

转载 作者:可可西里 更新时间:2023-11-01 11:16:40 26 4
gpt4 key购买 nike

因此,我们的时钟是对我的业务和员工至关重要的应用程序。它是多年前设计的一个更大的 RMS 系统的 exe 部分。当您签到或 checkout 时,应用程序会自动关闭。我创建了一个桌面快捷方式以加快打开速度,但我想知道是否有一种方法可以使用 Windows 脚本执行此操作。

基本参数:

计算机启动后,脚本运行,clock.exe 应用程序打开

如果在任何时候,clock.exe 关闭或停止; clock.exe 将被脚本重新打开。

我自己弄乱了脚本并设法让脚本打开了应用程序,但我试图使用一个循环让它监视导致许多时钟应用程序打开并最终由于过载而关闭计算机的过程。

option explicit
DIM strComputer,strProcess

strComputer = "." ' local computer
strProcess = "clock.exe"

' Check if Calculator is running on specified computer (. = local computer)

if isProcessRunning(strComputer,strProcess) then
CreateObject("WScript.Shell").Run("""C:\Users\FrontDesk1\Documents\alwaysClock.vbs""")
else
CreateObject("WScript.Shell").Run("""C:\RMS\pos\clock.exe""")
end if

' Function to check if a process is running
function isProcessRunning(byval strComputer,byval strProcessName)

Dim objWMIService, strWMIQuery

strWMIQuery = "Select * from Win32_Process where name like '" & strProcessName & "'"

Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" _
& strComputer & "\root\cimv2")


if objWMIService.ExecQuery(strWMIQuery).Count > 0 then
isProcessRunning = true
else
isProcessRunning = false
end if

end function

CreateObject("WScript.Shell").Run("""C:\Users\FrontDesk1\Documents\alwaysClock.vbs""")

最佳答案

不是轮询询问它是否正在运行,而是跟踪进程停止时引发的事件,观察 clock.exe 停止并重新启动它。这应该使用更少的资源(“我们到达那里时告诉我”与“我们快到了吗?我们快到了吗?我们快到了吗?”),并且响应更快(无需等待下一次投票开始)。

' Monitor process stop trace events.

Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\.\root\cimv2")

Set colProcessStopTrace = objWMIService.ExecNotificationQuery _
("SELECT * FROM Win32_ProcessStopTrace")

Do
Set objLatestEvent = colProcessStopTrace.NextEvent
Wscript.Echo "Test message: process stopped: " & objLatestEvent.ProcessName

if objLatestEvent.ProcessName = "clock.exe" then
CreateObject("WScript.Shell").Run("""C:\RMS\pos\clock.exe""")
end if
Loop

(改编自http://www.vbsedit.com/scripts/misc/events/scr_1218.asp)

关于Windows 脚本 (VBS) 始终使应用程序保持打开状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38649944/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com