[VBS]关机恶作剧

一、关于脚本

1)本文中的脚本完成以下功能:

随机生成3道二位数加法题,如果答题错误则在60秒后关机。

如果全答对了,也会在60后关机,但脚本会提示解除定时关机的办法

2)在脚本运行过程中,退出本脚本的方法为:

在任务管理器中找到wscript.exe,选择结束进程即可(如下图)

3)如果已经进入了关机倒计时读秒阶段,打开命令提示符输入下面命令即可结束倒计时:

1 shutdown -a

二、VBS脚本

 1 'Version: 1.0.20140819.1
 2  
 3 On Error Resume Next '出现错误时跳开语句
 4  
 5 '申明程序意图
 6 Dim Tip
 7 Tip = "小伙你现在已经落入我的圈套了!" & Chr(13) 
 8 Tip = Tip & "这样吧,我给你出三道数学题,你做出来我就放了你" & Chr(13)
 9 Tip = Tip & "你看怎么样?"
10  
11 '必须选是
12 Dim Choice
13 While Choice <> VbYes
14     Choice = MsgBox(Tip, VbYesNo)
15     If Choice = VbNo Then
16         MsgBox "小伙你挣扎的样子颇有几分我年轻时的神韵"
17     End If
18 Wend
19  
20 '声明变量
21 Dim a        '加数
22 Dim b        '加数
23 Dim Equation '生成的算式
24 Dim Result   '输入的和
25  
26 '生成伪随机数
27 Randomize()
28  
29 '第一题
30 a = int(50 + 50 * Rnd())          '生成随机数a
31 b = int(50 + 50 * Rnd())          '生成随机数b
32 Equation = a & " + " & b & " = ?" '生成算式
33 Result = InputBox(Equation)       '询问问题
34 If Result <> cstr(a + b) Then     '判断是否回答正确
35     MsgBox "这么简单的数学题你也不会算吗!"
36     ShutDown     '关机
37     WScript.Quit '退出脚本
38 End If 
39  
40 '第二题
41 a = int(50 + 50 * Rnd())
42 b = int(50 + 50 * Rnd())
43 Equation = a & " + " & b & " = ?"
44 Result = InputBox(Equation)
45 If Result <> cstr(a + b) Then
46     MsgBox "这么简单的数学题你也不会算吗!"
47     ShutDown
48     WScript.Quit
49 End If 
50  
51 '第三题
52 a = int(50 + 50 * Rnd())
53 b = int(50 + 50 * Rnd())
54 Equation = a & " + " & b & " = ?"
55 Result = InputBox(Equation)
56 If Result <> cstr(a + b) Then
57     MsgBox "这么简单的数学题你也不会算吗!"
58     ShutDown
59     WScript.Quit
60 End If 
61  
62 '宿命:虽然也会试图关闭计算机,但还是网开一面
63 Dim Destiny
64 Destiny = "小伙子挺屌啊,算我服了你了,我给你指条明路吧" & Chr(13)
65 Destiny = Destiny & "一会儿你打开命令行,输入 shutdown -a 就没事了"
66 MsgBox Destiny
67 ShutDown
68  
69 '例程:60秒后关闭计算机
70 Sub ShutDown
71     Set ws = WScript.createobject("wscript.shell")
72     ws.Run "shutdown -s -t 60", 0
73 End Sub
原文地址:https://www.cnblogs.com/masonlu/p/4691374.html