一起创业网-为互联网创业者服务

vbs怎么判断程序是否激活

在VBScript中判断程序是否激活,可以通过执行Windows Management Instrumentation (WMI) 查询来实现。以下是一个示例代码,用于检查特定的程序(例如 `BstkSVC.exe`)是否已经启动:

```vbscript

Option Explicit

Dim objWMIService, colProcess, programName, result

programName = "程序.exe" ' 替换为你要检查的程序名称

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

Set colProcess = objWMIService.ExecQuery("Select * from Win32_Process Where Name = '" & programName & "'")

result = "未启动"

If colProcess.Count = 0 Then

WScript.Echo "程序未启动"

' 如果程序未启动,可以选择重新启动计算机

Set objShell = CreateObject("WScript.Shell")

objShell.Run "shutdown -r -t 0", 0, True

Else

WScript.Echo "程序已启动"

result = "已启动"

End If

WScript.Echo "程序状态: " & result

WScript.Quit

```

这个脚本通过WMI查询 `Win32_Process` 类来检查指定的程序是否在运行。如果查询结果为空(即 `colProcess.Count = 0`),则表示程序未启动,并且可以选择重新启动计算机。如果程序已启动,则脚本会输出相应的信息。

如果你想要检查Windows操作系统是否激活,可以使用 `slmgr.vbs` 命令行工具。以下是一个示例VBScript代码,用于检查Windows 10是否永久激活:

```vbscript

Option Explicit

Dim objShell, result

Set objShell = CreateObject("WScript.Shell")

result = objShell.Run("slmgr.vbs -xpr", 0, True)

If result = 0 Then

WScript.Echo "计算机已永久激活"

Else

WScript.Echo "计算机未永久激活"

End If

WScript.Quit

```

这个脚本通过执行 `slmgr.vbs -xpr` 命令来检查操作系统的激活状态。如果返回值为0,则表示计算机已永久激活;否则,表示计算机未永久激活。

请注意,这些脚本需要在具有相应权限的环境下运行,例如以管理员身份运行。