当我尝试打开时,我收到此错误:
'objShell 800A01A8'
我不知道它是什么,但它很烦人,因为它刚才起作用。这是我的代码:
WScript.Sleep 0
Const wshYes = 6
Const wshNo = 7
Const wshYesNoDialog = 4
Const wshQuestionMark = 32
intReturn = objShell.Popup("Vil du annulere shutdown?", _
20, "Shutdown om 5 minutter!", wshYesNoDialog + wshQuestionMark)
If intReturn = wshYes Then
Wscript.Echo "Shutdown annuleret."
objShell.Run "C:\ProgramData\AutoShutdown\Annuler.bat"
End If
基本上我希望在预定/计划关机前5分钟执行此操作,询问您是否要取消(取消=取消)关机。
这是我遇到的另一个问题,它基本上必须执行shutdown -a
,但由于我在VBScript上非常不好,我失败了。目前,如果用户选择“是”,则只需执行shutdpwn -a
即可打开批处理文件。
所以,如果有人告诉我如何:
,我会 真的 赞美它shutdown -a
。答案 0 :(得分:1)
从这段代码中获取灵感:
Option Explicit
Dim Titre,ws,N,Question
Titre = "Arrêt automatique de l'ordinateur"
Set ws = CreateObject("wscript.Shell")
Do
Call Choisir()
Call Poser_question()
Loop
Sub Choisir()
Do
N = Trim(InputBox("Taper le nombre de secondes avant shutdown : ",Titre,"60"))
If Not IsNumeric(N) Then
ws.Popup "Vous devez taper un Nombre !","3",Titre,0+48
End if
Loop Until IsNumeric(N)
MsgBox "Vous avez choisi " & N & " seconde(s) avant le shutdown de votre PC !",64,Titre
Run_Shutdown(N)
End Sub
Sub Poser_question()
Question = MsgBox ("Vouliez-vous annuler le shutdown de votre PC ?",VBYesNO+VbQuestion,Titre)
If Question = VbYes then
Call Annuler_Shutdown()
Wscript.Quit
else
Wscript.Quit
end if
End Sub
Sub Run_Shutdown(N)
Dim Command,Execution
Command = "Cmd /c Shutdown -s -t "& N &" -c "& DblQuote("Sauvegarder votre travail car votre PC va s'arrêter dans "& N &" seconde(s)")
Execution = ws.run(Command,0,True)
End sub
Sub Annuler_Shutdown()
Dim Command,Execution
Command = "Cmd /c Shutdown -a"
Execution = ws.run(Command,0,True)
End Sub
'*****************************************************************
'Fonction pour ajouter des guillemets dans une variable
Function DblQuote(Str)
DblQuote = Chr(34) & Str & Chr(34)
End Function
'*****************************************************************