启动时启动程序,但仅限于使用笔记本电脑电源时

启动时启动程序,但仅限于使用笔记本电脑电源时

我有一个名为 rainmeter 的程序,它可以显示我插入笔记本电脑的第二台显示器的时间和日期,目前它只在启动时运行,但当我拔下笔记本电脑并在启动时转到大学时,我希望 Rainmeter 不会加载,因为我每次都必须关闭它。我之前在 Windows 8 上看到有人编写了一个实现此目的的脚本,但它似乎在 Windows 10 中不起作用。任何帮助都将不胜感激

答案1

我没有电池,所以这个答案是根据文章盲目写的
如何判断笔记本电脑是否使用电池供电?

创建一个名为的文件,其中test.vbs包含以下代码:

Option Explicit

Dim objShell :Set objShell = CreateObject("WScript.Shell")
Dim objWMIService :Set objWMIService = GetObject("winmgmts:\\.\root\wmi")
Dim colItems :Set colItems = objWMIService.ExecQuery("Select * From BatteryStatus Where Voltage > 0")
Dim objItem :Set objItem = Nothing

For Each objItem in colItems
    If (objItem.PowerOnline = "True") Then objShell.Run "C:\Windows\notepad.exe"
Next

在使用和不使用交流电源的情况下运行此文件,查看是否notepad 仅在交流电源下启动。

如果脚本失败,请告诉我错误。

如果脚本成功执行,您可以将其替换notepad为完整路径,rainmeter 并将其放在启动组中,以便在登录时运行 C:\Users\USER-NAME\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup


注意:如果可执行文件的路径包含空格,则命令需要这样写:

objShell.Run("""c:\Program Files\Mozilla Firefox\firefox.exe""")

或者像这样:

objShell.Exec("c:\Program Files\Mozilla Firefox\firefox.exe")

查看帖子 启动路径包含空格的程序

相关内容