前言:上一次养蛊好友弄的太狠了,这次我决定让Ta的电脑能开机,但explorer无法加载,这样的话,Ta一定很不爽
第一阶段:研究
众所周知,注册表中有一个叫“shell”的字符串值,它位于“HKEY_Local_Machine\Software\Microsoft\Windows NT\Current Vision\WinLogon”中这个值中储存着用户登录后打开的第一个exe(默认是explorer.exe),值得注意的是,如果explorer不是系统当前的shell,那打开explorer就只会加载出文件管理,所以我们可以利用这个特性来整好友
第二阶段:实践
我们可以先写一个bat文件,指令如下
@echo off
echo “你需要关注@微软管理控制台MMC才能使用explorer”
PS:至于echo命令为什么加引号就不用我说了吧(可以去看上一篇博客)
接下来就是关注@XXX了,这里虽然可以使用start https://blog.csdn.net/你的用户ID/type=blog?来实现,但不好判断好友有没有给@XXX关注,所以这里用另外一种方法实现,先建一个vbs文件,然后输入以下指令:
MsgBox “是否关注@微软管理控制MMC”, vbInformation, “Windows VIP”
MsgBox “你已经成功的关注了@微软管理控制MMC”, vbInformation, “Windows VIP”
其实就是写了个vbs,然后用它弹出了两个弹窗
PS:别问我为什么只用两个简陋的弹窗,问了就是我不会写HTA
然后我们需要用bat启动它:
start Windows_VIP.vbs
pause
主程序差不多写完了,就剩最后几行了,最后几行就是把shell改回去
reg add "HKCU\Software\Microsoft\Windows NT\Current Vision\WinLogon" /v "shell" /t REG_SZ /d "explorer.exe" /f >nul
echo 请自行打开explorer
pause
exit
这个“reg add”命令的详细语法是这样的:
基本结构:
reg add KeyName [/v EntryName|/ve] [/t DataType] [/s separator] [/d value] [/f] [/reg:32 | /reg:64]
参数说明
-KeyName:指定要添加的子项的完全路径。对于远程计算机,请在
\\ComputerName\PathToSubkey
中的子项路径前包含计算机名称。忽略ComputerName
会导致默认对本地计算机进行操作。有效子目录树为HKLM
、HKCU
、HKCR
、HKU
以及HKCC
。远程机器上只有HKLM
和HKU
可用12。-/v EntryName:指定要添加到指定子项下的项名称。如果省略,则添加的是一个空值(默认项)12。
-/ve:为注册表项添加空白值名(默认项)12。
-/t DataType:指定项值的数据类型。可以是以下几种类型之一:
REG_SZ
、REG_MULTI_SZ
、REG_DWORD
(包括REG_DWORD_BIG_ENDIAN
和REG_DWORD_LITTLE_ENDIAN
)、REG_BINARY
、REG_LINK
、REG_FULL_RESOURCE_DESCRIPTOR
、REG_EXPAND_SZ
等。如果忽略,则默认为REG_SZ
12。-/s separator:指定用于分隔多个数据实例的字符(当数据类型为
REG_MULTI_SZ
时)。如果忽略,则使用默认分隔符\0
14。-/d value:指定新注册表项的值12。
-/f:不用询问信息而直接添加子项或项,即使键或值已经存在也进行添加12。
-/reg:32:指定应该使用32位注册表视图访问的注册表项4。
-/reg:64:指定应该使用64位注册表视图访问的注册表项4。
—摘自百度AI助手
为了避免下次开机这个窗口没了,我们再写一个bat:
@echo off
reg add "HKCU\Software\Microsoft\Windows NT\Current Vision\WinLogon" /v "shell" /t REG_SZ /d "Windows_VIP.bat" /f >nul
logoff
然后我们将它放到启动项里(启动项的位置可以自行上网搜索),这样就完成了
标签:SZ,explorer,搞汐,REG,Windows,注册表,reg From: https://blog.csdn.net/2401_86447077/article/details/141361879