你可能不知道的 Windows 快捷方式玩法

你可能不知道的 Windows 快捷方式玩法

关于Windows上的一类文件有这么一些笑话:你请某人发送一个文件副本,Ta将桌面上的「文件」拖到了聊天框,叮当一响,你收到了一份document.lnk;你告诉Ta将某某软件卸载,于是Ta把桌面上的「软件」移到了回收站,告诉你「搞定了」……
这类文件读者都很熟悉,我们一般称之为快捷方式,它们的图标上都带着小箭头。大部分软件安装后往往会同时在桌面和开始菜单中创建快捷方式;如果没有,一些读者可能会在目标文件上右键>发送到>桌面快捷方式自己己新建一个。
但除了右键发送到桌面,Windows快捷方式其实还可以更快捷:在引用对象支持的情况下,它能做到直接调用软件的子功能、以某个模式启动程序等等。
让我们先从快捷方式的工作方式讲起。
在微软的开发者文档中,快捷方式有另外一个更准确的表述:ShellLinks,可翻译为壳层链接。这个名称更趋近于它的本质:用于Windows壳层(Shell)的链接文件。Windows图形壳层自然是资源管理器(explorer.exe),这是它赖以工作的进程;而「链接」则说明ShellLinks是指向引用对象(correspondingobject)的文件而并非对象本身。
以桌面上的Firefox.lnk为例,当我们双击此链接,资源管理器发现用户尝试打开的文件类型为快捷方式,便读取了它的「目标」属性的内容C:ProgramFilesMozillaFirefoxfirefox.exe,然后尝试打开此「目标」,Firefox程序于是被唤起了。
这和我们在资源管理器地址栏输入Firefox.exe位置的原理和效果是类似的。
但不同的是,快捷方式有几个其他的属性是我们不能通过填充地址栏做到的:
听到打开快捷方式和在资源管理器地址栏输入地址类似,一些读者可能会想到,Windows资源管理器地址栏不光能输入文件地址,还可以输入shell:downloads直接打开下载文件夹,输入shell:::{26EE0668-A00A-44D7-9371-BEB064C98683}打开控制面板,输入https://example.com打开网站……
是的,快捷方式也能接受这些内容。根据引用对象种类的不同,常用的快捷方式分为两种:
通过图形界面创建快捷方式目前有两种途径:从引用对象创建和使用向导创建:
以上面两种方式创建快捷方式时,引用对象必须存在。但是创建完成后,引用对象存在与否就不再影响快捷方式,两者只会在用户打开快捷方式时发生关联。
当用户双击快捷方式时,系统会尝试解析该快捷方式:首先它会用快捷方式指向的路径检查引用对象是否能直接找到;如果路径的目标无对象,资源管理器接下来会使用名为分布式链接跟踪的技术,依靠对象原来的大小,名称,创建日期等信息进行检索,成功找到目标后Windows会自动更新快捷方式的目标属性;若无法找到则会提示用户删除快捷方式。
链接跟踪技术的应用给快捷方式带来了硬链接一样的解析效果:引用对象删除后恢复、重命名、移动位置都不会导致快捷方式失效。由于它也像符号链接一样依靠文件路径定位,所以只要路径正确,无论引用对象是否是原来的文件,快捷方式都会将其打开。
同样可以链接到文件的路径,同样由系统提供支持,快捷方式和符号链接却有本质上的区别。快捷方式仍然是一个文件,它有自己的后缀名,有对应的数据(一个地址)和大小(几KB),还有自己的图标和属性。但符号链接没有对应的数据对象,因而也没有大小可言,它没有后缀名,不具有完整文件结构。
以一个房子为例,每一个房子都有坐标。给别人一个符号链接,相当于为他开了一个直通房屋所在的传送门,他不需要知道房子实际在什么地方;而快捷方式只是一张写有地址的小纸条,他需要自己摸索才能到达房子。资源管理器可以读取纸条内容后找到房屋所在,但其他程序未必有这个能力。
综上所述,类似TXT文本由Notepad打开,快捷方式由资源管理器处理,它将自己的各个属性值传达给资源管理器,后者负责检索并打开引用对象。引用对象可以是文件、目录或URI。
指向一个文件、目录、网页的快捷方式想必读者司空见惯。但可执行程序并不是普通文件那么简单:notepad.exe会打开一个未命名的文件,notepad.exekepa.txt则会新建一个名为kepa.txt的文本文件;URI方案亦不只有HTTPS,它可是iOS自动化的老将。
为链接文件添加标识与参数,将网络快捷方式目标设置为Windows支持的的URISchemes,也许能解锁快捷方式更多的可能性。
在图形化操作系统尚未普及之前,用户一次又一次输入命令标识(flags)参数来完成工作。这种方式即使放在今天在很多情况下仍然比图形界面更高效。且不谈一些仍然流行的终端应用,即使是那些专门为图形界面设计的应用,不少也提供了终端调用的方式和丰富的标识,而这些都能被快捷方式利用。
下面以四个实例讲解相关用法,本节的小结部分总结了查找标识参数的两个方法。
Word内置了博客写作工具,完成后可以从软件内直接发送至WordPress等平台。但打开Word,点击新建,再选择模板比较麻烦,能不能创建一个双击直接新建Word博客文章的快捷方式呢?
首先,我们需要确认Word支不支持命令调用的形式,有没有提供可用的标识。在搜索引擎中键入MicrosoftWordCLIFlags,前几个结果中就有微软官方给出的Office终端调用文档,文档称可以用-t加模板路径的方式据模板新建文档,这正是我们想要的。
使用这类快捷方式比较推荐的做法是首先定位到应用,将此应用的快捷方式作为底版。例如此例中,Word在ProgramFilesMicrosoftOffice中,找到EXE文件、按住Alt拖到桌面创建一个快捷方式。
打开创建的快捷方式,编辑其「目标」属性,在后面添加-t”模板文件路径”-q,这告诉Word跳过启动动画并按模板文件直接新建一个文档。将图标和快捷键名称改成自己喜欢的样子,一个简单便捷的快捷方式就做好了。
想要有一个直接以无痕模式运行的Chrome,方便销毁敏感的搜索记录。和上一个例子一样,首先以ChromeCLIFlags为关键词搜索,发现Chrome提供的参数多得几页都装不下。不过我们只需要找和无痕模式相关的标识,在网页内以incognito为关键词搜索,立即能发现–incognito标识。
为Chrome创建快捷方式做为底版,然后在目标属性后添加–incognito即可。
实际上,Chrome为安装的浏览器应用创建的快捷方式,和它为不同的用户创建的快捷方式也都是通过添加标识和参数实现的。
文章写到现在,笔者的桌面已经堆了不少配图。由于个人习惯边写边配图,需要用的图片已经自动上传图床,桌面上的图片大概率不会再用到了。我期望将它们快速移动到一个文件夹中,让桌面上新放的图更好找到。
截图和制图工具自动生成的图片命名全都以年份(2021)开头,所以这个操作用PowerShell实现起来并不难:
想要用快捷方式调用PowerShell,可以找找pwsh.exe(PowerShell7的exe名称)有没有给什么提示:在终端输入pwsh.exe-h,发现可以用-c参数调用命令:
接下来,我们用向导的方式创建这样一个快捷方式。在桌面右键>新建>快捷方式,输入pwsh.exe-nol-cniarchive-TypeDirectory-Force;mv2021*-Destination.archive,-nol是不加载Logo,会让命令处理更快一点。
输入完名称后,右键刚才创建的快捷方式,修改以下信息:
然后,将焦点移到桌面,按下预先设置好的快捷键或者点按此快捷方式图标,所有图片立刻归档完成。
第四个例子是为了补充一种情况——资源管理器本身的特殊参数。我们都使用过系统自动创建的回收站、控制面板、下载文件夹等快捷方式,但它们是如何工作的,用户能不能自行创建这些关键位置的快捷方式呢?
事实上,这些资源管理器内部的特殊位置是由系统在注册表中定义的,HKLMSOFTWAREMicrosoftWindowsCurrentVersionExplorerFolderDescriptions中包含了几乎所有这类关键位置的信息。每一个位置都对应着独一无二的名称(Name键数据)和GUID(项)。例如桌面文件夹对应的名称是Desktop,GUID是{B4BFCC3A-DB2C-424C-B029-7FE99A87C641}。
TenForums据此整理了两份(按名称,按GUID)列表大家也可以参考。
在快捷方式中调用它们也很简单,方法是使用explorer.exeshell:Name或者explorer.exeshell:::GUID。举例来说,想要创建一个直达声音设置界面的快捷方式,可以使用右键,新建快捷方式,其内容填explorer.exeshell:::{F2DDFC82-8F12-4CDD-B7DC-D4FE1425AA4D}。
以上四个例子,涵盖了绝大多数种类的应用。不难看出快捷方式创建过程并不复杂,可能会难住读者的是找到应用支持的标识参数的方法。这是有规律可循的:
一个指向某资源的具体地址,如https://example.com,被称为URL。这串字符作为命名方式而言的第一级就是URIScheme(统一资源标志符方案)。我们最常见的HTTPS只是数以百计URI方案中的一种。正如同我们能不通过网站主页用URL直接打开某一篇文章一样,URI亦可以用于打开软件内的某一个位置。
若读者在浏览器上搜索过Windows商店应用,点击安装,浏览器会弹出「打开MicrosoftStore」的提示,点击后会跳转到WindowsStore。这就是Windows上URISchemes的简单应用。
将URISchemes用于快捷方式的讲解也像上一节一样,先看几个用例,个中要点放在小结部分。
作为笔者的主力笔记应用,Obsidian中有一些使用非常频繁的笔记,例如Todo,快速笔记等。要是能有迅速打开这些笔记的快捷方式自然再好不过。Obsidian并没有提供好用的标识参数,所以不妨求助于同样强大的URISchemes。
以obsidianURISchemes为关键词搜索,能找到开发者对ObsidianURI的详细解释文档。
当然,我们的目标只是找到打开Obsidian某条目的快速方法。使用过Obsidian的读者应该能发现右键某个条目会有复制ObsidianURL的选项,我们需要的就是这样一个链接。
同样使用右键调出创建向导,在弹出的内容中填写刚刚复制的URI,一个快捷方式就创建完成了。如果还有其他需要快速调用的笔记,也可以如此操作。
和要好的朋友聊天、写邮件,有什么东西需要立刻和朋友分享,这些操作都需要进入客户端后选择聊天对象。能不能更简便一点,直接唤起和某人的聊天呢?只要应用支持,这是能够实现的。
检索的方式仍然是应用名urischemes,根据搜索到的提示,我在快捷方式创建向导的目标位置框中填入下面三个内容:
经过笔者查阅,微信PC端曾经支持类似的功能,但目前只能用weixin:唤起微信主界面。飞书亦支持lark:开头的外部请求,但唤起聊天界面需要对方的OpenID。
作为Windows的特点之一,控制面板与更现代的设置两代同堂的局面已经持续很久。不难发现是它们俩可以相互跳转到某项功能的子界面。通过上一个节的第四部分,我们知道控制面板内的条目能用GUID等方式调用,那么更现代的设置是怎么做的呢?答案是URI。
以ms-settingsURIschemes为关键词检索,能发现微软给出的官方文档,里面详细列举了以ms-settings开头的各类可用URIs。
这些URIs是被设计为供开发者调用的,作为用户的我们也可以按照自己的需要将它们创建为快捷方式。比如说,笔者认为通过任务管理器导航到开机自启管理界面过于麻烦,那么我可以使用右键,创建快捷方式,在对象位置一栏中写入ms-settings:startupapps。将此快捷方式移动到开始菜单,以后就能直接点击或者搜索开启自启来访问此项设置了。
微软的许多UWP类型的系统应用,例如Edge、商店、人脉,都提供了URIScheme支持。对于一些变量,例如默认浏览器、默认视频播放器,Windows也有对应的URIs可供调用。
Windows下想要知道哪些应用支持URI调用还是很简单的:URISchemes在注册表中被表述为URLProtocol,要使用URI的应用必须在注册表中新建一个带有URLProtocol字符串的项2。我们可以通过浏览HKCR,来确认某应用的URIScheme支持情况。如下图所示,能看到BiliBiliUWP版注册了bilibili:
对于系统应用和WindowsStore应用而言,我们也可以从Windows设置>默认应用>按协议指定默认应用(Windows11改名为按链接类型指定默认应用)界面寻找已经被注册的各类URISchemes。不过此面板不会显示一些传统应用。
然而试图查阅到一个可用的URI相对而言较为困难。URI方案后的行为、查询参数大部分情况下用于供开发者进行应用内跳转,不会暴露给用户。并且由于安全问题,不少应用都限制了从外部直接调用程序功能。
所幸URIs往往会兼顾多平台的通用性,Windows、iOS、Android系统上同一个应用的URIScheme用法有可能是一样的。
要是不确定一个URIScheme是否起作用,读者在将它们写入快捷方式之前,可以先使用资源管理器的地址栏做实验,效果符合预期再行动也不迟。
就能力而言,快捷方式显然比不上脚本等手段。首先它的目标路径只能填一行,本文第二节虽然有用快捷方式执行多条命令的用例,但这显然不如脚本来得优雅;其次,快捷方式是静态的,想要为它加一些变量,例如打开Obsidian这一周的周志、用电报发送剪贴板内容,快捷方式实现起来就较为吃力,需要其他工具从旁辅助。
然而其优势也是很明显的——用起来简单方便。将目标写好,和我们交互的就只是一个带箭头的小图标。我们可以双击;可以将它们放在开始菜单中用于检索;还可以固定到任务栏,用Windows+数字键启用。快捷方式本身也是一个文件,它们可以被保存、备份、迁移,只要路径正确就能成功运行。
除了能用在快捷方式上,本文介绍的标识和URISchemes也能用于Windows注册表、AutoHotkey,JS脚本等其他地方,因而第二、三节的小结部分或许还有本文主旨之外的参考价值。
本文的意义仅在于提供应用的思路,揭示更多操作的可能性。真正适合自己的用法还需要读者自行探索。

主题测试文章,只做测试使用。发布者:最新稳定辅助网,转转请注明出处:https://www.744broad.com/47512.html

(0)
上一篇 2023年5月12日 上午4:27
下一篇 2023年5月12日 上午4:30

相关推荐

  • 给亲爱孩子的一封信

    给亲爱孩子的一封信 亲爱的轩王子,你好:努力的时光过得很快呢,你进入初中已三个月了,很好地适应了它的节奏,看着你在学校里军训、学习、早读、做操一系列的照片,妈妈的眼睛里溢出来的都是欣喜:这是我那个挺拔帅气的小伙子呢,茁壮成长、充满活力,是早晨八九点钟的太阳。在家里,爸爸妈妈包括姥姥姥爷时常唠叨你,唠叨你写作业慢,唠叨你想看电视,唠叨你屋子乱、刷牙洗脸等一系列…

  • 玩游戏头晕想吐?老玩家十年经验,带你光速告别3D眩晕症

    玩游戏头晕想吐?老玩家十年经验,带你光速告别3D眩晕症 对于一个热爱游戏的玩家来说,晕3D(3D眩晕症)绝对是人生一大遗憾,目前晕3D还没有已知的完美解决方法,我本身也是有轻度晕3D的玩家,而有的改善方法对我确实有用,但同样的方法对其他有晕3D的朋友们就不见得有效。即使如此,我还是对晕3D研究了一番,搜集了各种专业资料和建议,并且结合了我自身多年的经验,如果…

  • 比《使命召唤14》还要真实的游戏出现了!

    比《使命召唤14》还要真实的游戏出现了! 要说战斗民族,那大家肯定都会跟浮华一样想到“俄罗斯”不过他们人壮胆大,游戏做的也确实是非常不错。最近,俄罗斯Battlestate公司所制作的FPS网游《逃离塔科夫(EscapefromTarkov)》(注意是网游!这种画质估计没几个人带的动,主机板就另外看待了)开启Beta测试。游戏所用的引擎是Unity5(不得不…

  • “女子坐月子无聊破译顶级密码”?真相来了

    “女子坐月子无聊破译顶级密码”?真相来了 近日一条自媒体发布的消息因标题引发众怒这则消息内容讲述的是中国科学院院士王小云破解美国顶级密码的故事标题要素却故意博人眼球因此被网友怒斥——消弭了院士在背后付出的巨大努力类似的标题在近几年反复被某些自媒体引用而真相是怎么样的?王小云教授破译密码的过程从来都不是“坐月子无聊”她是全中国最懂密码的人之一她沉潜10年破解了…

  • 爆料:《COD 现代战争2》Steam版不需要战网就能运行

    爆料:《COD 现代战争2》Steam版不需要战网就能运行 《使命召唤:现代战争2》是时隔多年来COD重回Steam的一作,据推主CharlieIntel爆料《现代战争2》的Steam版本不需要战网客户端(Battle.net)就能运行,但需要Steam帐户与动视ID关联,并且还要绑定手机号。此外他还提到,Steam帐户与动视ID关联后,玩家现在可以在《使命…

  • 武器不同但口径相同,就能使用所有同口径子弹吗?其实没那么容易

    武器不同但口径相同,就能使用所有同口径子弹吗?其实没那么容易 【军武次位面】:路芷我们大家都知道武器和弹药的关系就如签字笔套和笔芯的关系一样,只有他们相互组合才能发挥作用。▲M2老干妈的大号点50子弹相比而言,武器就显得更具加精密和细致了,它们有着不同的种类,不同的种类有不同的口径以及弹药型号。首先我们看为什么北约成员国们的制式武器口径基本相同?▲红海行动中…

  • 欧阳娜娜直播CODM,为保护女神众人齐心协力,火线妹化身小迷妹

    欧阳娜娜直播CODM,为保护女神众人齐心协力,火线妹化身小迷妹 作为娱乐圈中比较优秀的女明星,欧阳娜娜代言了很多的产品因为知名度足够高,很多人都非常喜欢她。近期,欧阳娜娜也成为了使命召唤手游的代言人,并且在这款游戏中也加入了欧阳娜娜的角色,很多喜欢的粉丝都表示很满意。在8月6日,欧阳娜娜也携手KS的三位主播一起直播了关于使命召唤手游的内容,而这三个主播也是当…

  • 王者荣耀:S19赛季来袭,新英雄到底香不香

    王者荣耀:S19赛季来袭,新英雄到底香不香 3月31日,王者荣耀玩家期待的S19新赛季终于正式开启,新赛季的开启往往都会伴随着新英雄的产生。今天,玄雍风曲部队新成员“镜”正式加入王者峡谷,从人物关系来说,镜与S17上线的英雄曜为姐弟关系。让我们来康康这位新英雄到底香不香,值不值得入手呢?从之前的体验服与官方发布的信息来看,我们对镜姐已经多多少少有了一些了解。…

  • vivo X6 Plus评测 极速和HiFi的新革命

    vivo X6 Plus评测 :极速和HiFi的新革命 随着vivoX6在线下迎来抢购热潮,一同发布的vivoX6Plus也开启了全渠道的售卖,作为年底横空出世的双旗舰产品,vivoX6Plus不仅仅是一个放大版X6,继承了X6全金属超薄机身、4G大运存以及极速指纹识别以及闪充等优良基因的同时,vivoX6Plus也保留了属于自己的独特优势,比如HiFi世家…

  • 19岁少年开发射击游戏上架 美术风格曾遭猛批

    19岁少年开发射击游戏上架 美术风格曾遭猛批 最初由一人独立开发,现年19岁的波兰少年开发者JakubCislo,他的第一款作品《ProjectWarlock》近日已登上GOG商店平台,是一款走90年代复古风格路线的射击游戏。如宣传片所示,《ProjectWarlock》和早期DOS版的《毁灭战士》、《雷神之锤》、《毁灭公爵》等射击游戏类似,画面引擎不仅复古…

关注微信