封装批处理程序-删除图标小箭头 去掉快捷方式小箭头

删除快捷方式小箭头(包批处理程序-删除图标小箭头)
大家好,春去夏来,花香诱人 。找我,胖廖晨 。
上一篇文章需要的知识点我已经介绍过了 。在讲下面的内容之前,我们需要先回顾一下上面的知识点:
1.有四种与图标相关的快捷方式文件,扩展名为 。lnk,pif,。URL和wsh 。在注册表的位置:HCYK_CLASSES_ROOT下,对应的项有:lnkfile、piffile、Internet快捷方式、wshfile
2.需要DOS命令:delete reg删除注册表名称iShort/v iShort /f的注册路径(静默模式,无提示)
至于完成功能,我们还有一个DOS命令没有说:taskkill: stop process命令 。语法有点复杂 。这里我们只需要知道停止进程命令:
TSAKKILL+ /F(强制终止)/IM(进程名标识符)+进程名详细用法可参考下图:
TASKKILL命令参数使用示意图
编写Explorer.exe命令来结束这个过程并不难:taskkill/f/im EXPLORER.EXE
那么有人可能会问,这些订单你都记得吗?
当然,我记不清了 。我的脑容量很小 。我不能储存太多 。我只能储存一些获取这些知识的 ,比如一个命令的用法:command+/?或帮助命令名
例如,检查复制命令的用法:
Win+R,输入cmd,窗口会输入:copy/?或者帮忙抄然后输入 。
命令使用查询步骤示意图
说到批处理命令,我需要插入一个扩展的知识点 。有网友私下问我,WSH是什么档案?它是用来做什么的?
下面简单介绍一下:WSH文件,全称:WINDOWS Scripting Host(脚本服务环境工具),它为脚本使用对象和工具,并提供一系列脚本开发指南,可以实现用户登录、脚本管理和计算机任务自动化 。
说白了就是普通人不用的文件格式 。网上流传的大部分去除小箭头的 都没有处理 。对我们来说,只要做好一件事,也就是一单就好 。
让我们开始编写BAT文件 。虽然批处理文件是一个DOS命令集,但它也有自己独特的语法关键字,例如ECHO:
语法:echo空case+单词或句子含义:输出Echo后的单词和句子,有一个专业的名称:命令Echo,即执行时,原命令和执行结果依次显示;
当命令很多的时候,有时候我们可以通过前面的@ echo off关闭,不需要命令echo 。具体来说,我们来对比两个例子!为了捕获执行结果的状态,我们还需要一个批处理命令:
暂停:当命令执行到暂停位置时,会自动暂停 。这时候你需要手动输入任意一个键,它都会继续执行 。如果后面没有命令,执行结果窗口会自动关闭 。
命令回显使用和屏蔽步骤示意图
注意:存储批处理文件时,需要注意文件编码 。默认编码是UTF-8 。如果有中文,需要保存为ASNI编码,否则执行结果会乱码 。
这就是中使用的所有批处理语法,现在我们终于可以编写我们的程序了,这相当简单:
@ echo offreg删除HKEY _ CLASSES _ ROOT \ lnk file/V IS short cut/Freg删除HKEY _ CLASSES _ ROOT \ pifFile/V IS short cut/Freg删除HKEY_CLASSES_ROOT\ Internet快捷方式/V IS short/Freg删除HKEY _ CLASSES _ ROOT \ wsh file/V IS short/F task KILL/F/IM explorer.exe & & explorer.exe,聪明的你发现了吗,最后一句怎么不写两句??
Taskirl,explorer.exeExplorer.exe是想炫耀他的技术吗?明明两句话,还得一句话说完!
真的不是炫耀,真的有必要写这个,因为这个有特殊用途的符号:&&
学名逻辑and运算符,在逻辑表达式中,表示前后条件都为真,则返回的结果为真,其他都为假;
但在编程中也有阻塞功能,也叫阻塞运算符 。
如果两个编程命令或语句用&链接,那么只有之一条语句成功执行,第二条语句才会执行,否则第二条语句会被忽略 。最后一个命令的目的是重新启动explorer 。如果explorer进程没有完成,explorer.exe将被执行,而两个explorer.exe将出现在系统中 。虽然危害不大,但是要避免这种情况,而且&&会是更好的选择 。
为了方便查看运行结果,需要使用代码末尾的暂停命令来暂停执行结果界面 。
程序已经写的差不多了,开始最后的测试吧 。
01最终测试
在程序设计中,测试占据了非常重要的位置,测试 可以分为:灰盒测试、白盒测试和黑盒测试 。虽然本文不使用它,但这里有一个简单的名词解释:
白盒测试:也叫结构测试,测试人员了解程序结构和处理算法,主要根据程序内部逻辑编写测试用例;在测试人员眼中,程序就像一个透明的盒子,因此得名 。黑盒测试:与白盒测试相比,测试人员是设计测试用例的关键需求,它更注重结果,而不是程序的内部结构和算法 。更像是某个小白使用某个软件,也有专门的测试,比如等价类划分、边界值分析、误差预测、因果图等 。灰盒测试:是现实般妥协的产物,因为每一次白盒测试都是耗时耗资源的,只有黑盒测试无法检测出正确的结果和程序内部的问题 。严格来说,我们做的不是程序,只是一个小工具 。这里的测试分不清是白盒还是黑盒,因为只有几行代码,没有复杂的逻辑和数据结构,但是测试是不可忽视的,这也是工具好用与否的关键 。全面测试的话,工具就通用了 。