Windows 关机/重启通知程序提供延迟选项,类似于自动更新

Windows 关机/重启通知程序提供延迟选项,类似于自动更新

我使用 WPKG 部署了一个 Windows 程序,该程序对用户隐藏运行,有时可能需要重新启动。为了防止用户丢失工作,我想要一个带有消息的对话框,让登录用户可以选择延迟关机一段时间。这与自动更新的方式类似。

我查看过许多可以向用户发送消息的关机实用程序,但没有一个可以给予用户一点控制权来延迟关机。

答案1

A快速而肮脏选择是使用电源关断在里面工具套房微软系统内部

可用的开关之一是-c。它允许用户通过按下Cancel按钮来停止重启。

-c 允许交互式用户中止关机。

您可以将其设置为每 X 分钟循环一次,直到用户准备重新启动机器。


A更整洁实现此目的的方法是编写自己的 VBscript。这可以提供一个漂亮的对话框,例如,YesNo。如果他们单击“否”,它将休眠 X 分钟,然后再询问。这将非常容易编写。

编辑:好吧,我很无聊,所以我为你写了这个脚本。尽情享受吧。

option explicit
on error resume next

Dim strComputer, intRebootChoice
Dim objWMIService, objOperatingSystem
Dim colOperatingSystems 

strComputer = "."

do while 1>0
 intRebootChoice = msgbox("OI, you, need to reboot.  Choose No to be asked again 1 hour",308,"Reboot incoming")
 select case intRebootChoice
  case 6
   Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate,(Shutdown)}!\\" & strComputer & "\root\cimv2")
   Set colOperatingSystems = objWMIService.ExecQuery ("Select * from Win32_OperatingSystem")
   For Each objOperatingSystem in colOperatingSystems
    ObjOperatingSystem.Reboot(1)
   Next
  case 7
   wscript.sleep(3600000)
  case else
   'shenanigans'
 end select
loop

答案2

C:\WINDOWS\system32\shutdown.exe 实用程序似乎可以帮我完成这个工作。]

请尝试以下操作: shutdown -r -t 500 -c “快乐的用户消息”

编辑:自动更新重启消息更像是带有超时和重启按钮的烦人屏幕。很容易复制此代码,尽管您可能需要在 stackoverflow 上提问 :)

相关内容