巧用快捷方式实现自定义Win+R命令(VBS版).

另一篇文章 巧用快捷方式实现自定义Win+R命令(手动版). 介绍了如何手动创建自定义Win+R命令.

这篇文章将介绍如何使用脚本自动创建并管理自定义Win+R命令.

为什么要使用这个脚本?

因为这个脚本可以自定义Win+R命令.

为什么要用脚本,而不是程序?

1. 因为脚本简单,免去了使用开发环境的麻烦.

2. 因为脚本是开源的,不用担心有病毒.

这个脚本实现了什么功能?

这个脚本首先会进行安装:

1. 将自身复制到"D:\L\自定义Win+R命令.vbs"(如果目录不存在则自动创建)

2. 将"D:\L"加到系统的"Path"路径中.

3. 在"D:\L"中创建一个它自身的快捷方式(名称为"L").

4. 在"SendTo"(也就是发送到)目录创建脚本的快捷方式.

(路径是"C:\Users\用户名\AppData\Roaming\Microsoft\Windows\SendTo")

使用"发送到->自定义Win+R命令"的时候:

1. 在"D:\L"目录中创建一个以你输入名称为主文件名的快捷方式.

自动进行了上边的步骤以后,就可以使用自定义命令了:

下边是详细操作步骤:

先上脚本:

' 脚本说明 https://blog.csdn.net/milaoshu1020/article/details/80711574
' installpath是本脚本要安装到的路径.
' d:\L是脚本所在的路径,也是保存快捷方式的目录.
installpath = "D:\L\自定义Win+R命令.vbs"

set fso = createobject("scripting.filesystemobject")
set shell = createobject("wscript.shell")
installdir = fso.getparentfoldername(installpath)
installbase = fso.getbasename(installpath)

If wscript.arguments.count = 0 Then
	generateinstalllnk
Else
	If wscript.arguments(0) = "-install" Then
		Select Case msgbox("是否安装'" & installbase & "'脚本?",vbokcancel)
		Case cancel
			wscript.quit
		End select
		copyscriptfile
		addinstdirtosystempath
		createinstdirlnk
		createsendtolnk
		msgbox "'" & installpath & "'安装完成,你现在可以:" & vbcrlf & _
			"使用右键菜单中的'发送到'创建自定义命令." & vbcrlf & _
			"Win+R,输入'" & fso.getfolder(installdir).name & "'以打开命令(快捷方式)列表目录." & vbcrlf & _
			"Win+R,输入'命令(快捷方式名称)'以打开相应的程序或者目录."
	Else
		prompttoaddlnk
	End If
End If

Sub GenerateInstallLnk()
	curdir = fso.getparentfoldername(wscript.scriptfullname)
	instlnkpath = fso.buildpath(curdir,fso.getbasename(wscript.scriptfullname) & ".lnk")

	Set shortcut = shell.createshortcut(instlnkpath)
	shortcut.targetpath = wscript.fullname
	shortcut.arguments = """" & wscript.scriptfullname & """ -install"
	shortcut.save

	msgbox "'" & instlnkpath & "'生成完毕,请修改它的属性,选中'用管理员身份运行',然后双击运行它."
End Sub

Sub PromptToAddLnk()
	For i = 0 To wscript.arguments.count - 1
		targetpath = wscript.arguments(i)
		lnkname = fso.getbasename(targetpath)
		do
			lnkname = inputbox("请输入'" & fso.getfilename(targetpath) & "'的快捷方式名称(用于运行命令):",,lnkname)
			lnkpath = fso.buildpath(installdir,lnkname & ".lnk")
			If Not fso.fileexists(lnkpath) Or lnkname = "" Then
				Exit Do
			End If
			Select Case msgbox("'" & lnkpath & "'文件已存在,是否覆盖?",vbexclamation Or vbyesnocancel)
			Case vbyes
				Exit Do
			Case vbcancel
				lnkname = ""
				Exit Do
			End Select
		Loop While True
		If lnkname <> "" Then
			Set shortcut = shell.createshortcut(lnkpath)
			shortcut.targetpath = targetpath
			shortcut.save
			msgbox "'" & lnkpath & "'创建成功!"
		End If
	Next
End Sub

Sub CopyScriptFile()
	If LCase(installpath) = LCase(wscript.scriptfullname) Then
		Exit Sub
	End If

	If Not fso.folderexists(installdir) Then
		fso.createfolder(installdir)
	End If

	fso.copyfile wscript.scriptfullname,installpath,true
End Sub

Sub AddInstDirToSystemPath()
	pathname = installdir & ";"
	Set sysenv = shell.environment("System")
	If InStr(LCase(sysenv("PATH")),LCase(pathname)) = 0 Then
		sysenv("PATH") = pathname & sysenv("PATH")
	End If
End Sub

Sub CreateSendToLnk()
	sendtodir = shell.specialfolders("SendTo")
	lnkpath = fso.buildpath(sendtodir,installbase & ".lnk")
	Set shortcut = shell.createshortcut(lnkpath)
	shortcut.targetpath = installpath
	shortcut.save
End Sub

Sub CreateInstDirLnk()
	lnkpath = fso.buildpath(installdir,fso.getfolder(installdir).name & ".lnk")
	If Not fso.fileexists(lnkpath) Then
		Set shortcut = shell.createshortcut(lnkpath)
		shortcut.targetpath = installdir
		shortcut.save
	End If
End Sub

安装脚本

1. 复制上边的脚本内容到剪贴板,在任意位置新建一个文本文件,打开这个文件,将剪贴板内容拷到里边(此时可以修改脚本内容),保存文件,然后将它更名为"自定义Win+R命令.vbs".




2.双击这个vbs脚本,脚本会创建一个快捷方式:



右键打开快捷方式的属性对话框,在对话框中的"快捷方式"选项卡中,点击"高级(D) ...":



选中"用管理员身份运行",然后点击确定,保存设置.


3. 双击修改了属性的快捷方式并执行安装操作.




4. 至此脚本安装完成,这两个临时文件可以删除了:


使用脚本

1. 在要使用命令的文件或者快捷方式上点右键,选择"发送到->自定义Win+R命令",这里以QQ为例:


2. 在弹出的对话框中输入想要使用的命令名称,比如"qq",并点击确定.



至此脚本使用完成.

使用自定义命令

1. 点击Win键+R键,打开"运行"对话框窗口:


2. 输入自定义命令,如"qq",并点击"确定"(或者直接回车也可以):


3. QQ就运行起来了.


4. 你也可以运行"L",以管理命令,也就是快捷方式列表:


这是我的列表:

列表中的所有快捷方式都可以通过"Win+R"执行.

总结

使用Win+R运行自定义命令可以极大的提高工作效率,而通过此脚本来维护自定义命令又可以进一步提高效率.实在是太方便了!

FAQ

Q:双击VBS脚本文件打开的是记事本怎么办?

A:这是因为系统没有显示扩展名,实际的扩展名仍为".txt",这就需要显示扩展名:

(Win7)在文件浏览器的"组织"菜单中选择"文件夹和搜索选项",在"查看"页面,找到并取消选中"隐藏已知文件的扩展名",然后再修改文件名即可.



(Win10)在浏览器的"查看"选项卡中,选中"文件扩展名"复选框,然后再修改文件名即可.


Q:安装过程中遇安全软件拦截怎么办?

A:这是由于脚本要修改系统的环境变量"Path"路径引起的,脚本不包含任何恶意代码,在安全软件的警告中直接选择"忽略"即可.

Q:我的电脑没有D盘(或者D盘是光驱),我想装到C盘,怎么办?

A:在复制脚本内容(安装脚本第1步)时,将内容复制到记事本后需要修改内容:将 installpath = "D:\L\自定义Win+R命令.vbs" 这一行中的 D: 修改为 C: 就行了,修改后: installpath = "C:\L\自定义Win+R命令.vbs"

版权声明:本文为milaoshu1020原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/milaoshu1020/article/details/80711574

智能推荐

Android桌面快捷方式

Android中的桌面快捷方式和PC机上的快捷方式一样,用于启动某一应用程序。要在桌面添加一个快捷方式非常简单,只需长按桌面或者点击"Menu"按钮,然后在弹出的选项中选择shortcut,然后选择要添加的快捷方式即可。 下面主要介绍如何通过代码将一个应用程序添加到桌面快捷方式。 首先在描述文件AndroidManifest.xml中注册一个action为:<action...

PHPstorm快捷方式配置

1.plugins(插件)通过插件更改IDE风格样式   2.快捷键,可以根据自己的习惯设置 3.安装laravel插件,和第一步步骤类似,下载安装即可。安装完成以后重启然后开启laravel; 添加一个命令 4.安装代码提示插件   4.1:使用composer执行命令   4.2:在config/app.php文件中的 providers中添加 &nbs...

Android快捷方式解密

                      Android快捷方式解密 Android快捷方式作为Android设备的杀手锏技能,一直都是非常重要的一个功能,也正是如此,各种流氓App也不断...

Android应用快捷方式

有的App会给用户提供快捷方式,8.0之前我们多是通过发送com.android.launcher.action.INSTALL_SHORTCUT 广播的方式来实现。但在8.0的系统行为变更中指出,该广播变为私有的隐式广播,因此原来创建快捷方式的方法在8.0的系统上将不再有效,官方推荐我们使用ShortcutManager来创建应用快捷方式。 快捷方式应用场景及类型 快捷方式应用场景 Androi...

jQuery基础总结(三)

1.1 复习jQuery操作DOM 1.2 元素操作 1.2.1 高度和宽度 1.2.2 坐标值 $(“div”).offset(); // 获取或设置坐标值 设置值后变成相对定位 $(“div”).position(); // 获取坐标值 子绝父相 只能读取不能设置 1.2.3 滚动条(滚动事件) $(“div”).scro...

猜你喜欢

配置STP定时器

配置STP定时器 1、 PC1 ping PC2 2、配置STP定时器 在4台交换机上配置使用STP,并配置S1为该二层网络中根交换机,SW2为备份根交换机。 配置完成查看定时器的默认值】 在PC4上一直ping PC2,持续发送ICMP报文,并进行连通性测试。 在SW1上修改STP的Forwad Delay时间为2000cs,默认为1500CS,cs代表百分之一秒,只有在根交换机上配置才会生效。...

美图网上太多难以筛选,教你用Python挑选最合适的

前几天,極光同学写了篇下载王者荣耀皮肤的文章,可以轻松的获取各种英雄背景图,甚是激动,也想将桌面背景换成漂亮的,不过我对王者荣耀不感冒(曝露年龄啦),时常会被必应搜索主页的背景图所震撼,于是想到从必应获取桌面壁纸,并且排除掉自己不喜欢的图片,应该是个不错的主意,说干就干 问题分析 必应每天都会有新的壁纸,大都是自然风光、人文地理等等,非常漂亮,在页面上点击右键,保存背景图片,就能简单的保存下来。但...

MyBatis入门简单操作

MyBatis入门简单操作 1.Mybatis简介 MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的 POJOs(Plain Ordinary Java Object,普通的 Java对象)映射成...

基础C语言知识串串香9☞C语言复杂表达式

文章参考微信公众号[嵌入式软件学习圈] 四、C语言复杂表达式 4.1、在表达式中,要看符号的优先级和结合性。 4.2、在理解内存时,内存0地址在最底下,至上地址逐渐增加。 4.3、int *p;是定义的一指针变量p,而int (*p)[4];也是一个指针变量p;也可以这样想:凡是遇到(*p)什么的判断他是指针后,就可以说他是指针变量,包括函数指针。 4.4、一个函数int max(int a, i...

github上传本地项目

github学习:如何从本地把项目上传到github&&如何把github项目通过clone复制下来,详细教程 一、第一步---注册一个Github账号 首先要在GitHub上创建一个帐号,可以去官方网站注册一个账号。  前提:本地安装一个git 本人github:https://github.com/saucxs   二、git安装 下载地址:http://m...

玻璃钢生产厂家金昌大型玻璃钢雕塑定做玻璃钢雕塑培训学校平顶山番禺玻璃钢人物雕塑标志玻璃钢雕塑重不重河北特色商场美陈订购龙文玻璃钢雕塑厂家玻璃钢芒果卡通雕塑玻璃钢雕塑模具制作扬州玻璃钢人物雕塑优惠玻璃钢欧洲人物雕塑金水区玻璃钢智能雕塑山东玻璃钢雕塑壁纸兰州仿真人物玻璃钢雕塑崇左玻璃钢白鹭雕塑达州玻璃钢人物雕塑厂家平凉动物玻璃钢雕塑厂家安庆玻璃钢长颈鹿雕塑中山市玻璃钢雕塑艺术特色玻璃钢花盆制造湖州玻璃钢雕塑宁波玻璃钢金属雕塑长沙玻璃钢彩绘雕塑小品江苏大型主题商场美陈市场价玻璃钢鹿雕塑品牌河北超市商场美陈商场美陈简历负责什么哪有玻璃钢雕塑设计公司枣庄玻璃钢人物雕塑玻璃钢雕塑合格证书平南玻璃钢泡沫雕塑香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声单亲妈妈陷入热恋 14岁儿子报警汪小菲曝离婚始末遭遇山火的松茸之乡雅江山火三名扑火人员牺牲系谣言何赛飞追着代拍打萧美琴窜访捷克 外交部回应卫健委通报少年有偿捐血浆16次猝死手机成瘾是影响睡眠质量重要因素高校汽车撞人致3死16伤 司机系学生315晚会后胖东来又人满为患了小米汽车超级工厂正式揭幕中国拥有亿元资产的家庭达13.3万户周杰伦一审败诉网易男孩8年未见母亲被告知被遗忘许家印被限制高消费饲养员用铁锨驱打大熊猫被辞退男子被猫抓伤后确诊“猫抓病”特朗普无法缴纳4.54亿美元罚金倪萍分享减重40斤方法联合利华开始重组张家界的山上“长”满了韩国人?张立群任西安交通大学校长杨倩无缘巴黎奥运“重生之我在北大当嫡校长”黑马情侣提车了专访95后高颜值猪保姆考生莫言也上北大硕士复试名单了网友洛杉矶偶遇贾玲专家建议不必谈骨泥色变沉迷短剧的人就像掉进了杀猪盘奥巴马现身唐宁街 黑色着装引猜测七年后宇文玥被薅头发捞上岸事业单位女子向同事水杯投不明物质凯特王妃现身!外出购物视频曝光河南驻马店通报西平中学跳楼事件王树国卸任西安交大校长 师生送别恒大被罚41.75亿到底怎么缴男子被流浪猫绊倒 投喂者赔24万房客欠租失踪 房东直发愁西双版纳热带植物园回应蜉蝣大爆发钱人豪晒法院裁定实锤抄袭外国人感慨凌晨的中国很安全胖东来员工每周单休无小长假白宫:哈马斯三号人物被杀测试车高速逃费 小米:已补缴老人退休金被冒领16年 金额超20万

玻璃钢生产厂家 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化