U盘中的快捷方式解析
很多人都有使用绿色软件的习惯,在这里我简单称其为portable app
将这些软甲放到u盘中随身携带,便于我们使用更加符合自身习惯的功能软件。
相信习惯将软件放到u盘启动都会碰到一个问题,就是每次打开这些软件就需要在目录中寻找对应的启动文件了。
多数人日常生活中都会通过使用快捷方式启动软件,那么我们如何在u盘中创建快捷方式呢:
首先,大家尝试在u盘中创建快捷方式都会发现,创建的快捷方式都存在一个尴尬的问题,就是盘符问题,
即我们在一台电脑上为u盘(h:\)创建快捷方式,如:"h:\portable\allmynotes organizer portable\allmynotes.exe"
那么在另一台电脑上打开u盘(g:\)上的快捷方式,就会发现无法打开对应的程序了。因为"h:\..."是绝对路径的写法。
如何解决这个打开问题呢
1.下面先为大家介绍下系统环境变量的一个概念:
在path中大家会发现例如:%systemroot%的路径写法,再比如开发人员配置jdk环境变量时经常配置%java_home%,
这里说明下在windows环境下,%systemroot%是windows自带的一个指向系统根目录的一个默认配置项,
不同于我们自己配置的环境变量时需要单独配置java_home的环境变量,它不需要人为去配置指定。
2.其次介绍windows系统中每天必用的explorer.exe文件资源管理器。
需要注意文件资源管理器并不是单纯的只有你打开 我的电脑进行文件浏览,文件的增删改查时才会用到,
windows的基础依赖之一就是文件资源管理器,它的详细介绍感兴趣的可以单独去百度,我告诉大家一个直接检测的方式
在我们的任务管理器的详细信息中结束explorer.exe,不出意外除了你当前调用的窗口,桌面的其它地方都无法正常显示,
这时再已管理员权限创建explore.exe的任务,桌面才能正常显示,但是之前打开的一些窗口都已经不在了。
3.重点,调用我们的explorer.exe的系统资源管理器,我们直接创建系统资源管理器的快捷键,
这样的好处在于,无论你在哪里打开这个快捷方式,explorer.exe的路径不会改变(没毛病),就算你用的是双windows系统,
你当前打开的系统默认也是c盘,而你的%systemroot%也默认指向你的当前系统的根目录,然后我们借助不会变化的系统根目录
创建调用资源管理器的快捷方式,然后传入需要打开路径的参数即可,具体如下:
依然拿刚才的"h:\portable\allmynotes organizer portable\allmynotes.exe"为例
将快捷方式的目标项改为:%systemroot%\explorer.exe "allmynotes organizer portable\allmynotes.exe"
起始位置项改为:"%systemroot%\explorer.exe "allmynotes organizer portable"" 即可。
这里需要注意的是:目标项中%systemroot%\explorer.exe前后不带引号,但是后面有一个空格,
后面的"allmynotes organizer portable\allmynotes.exe"是当前快捷键在u盘中的位置到allmynotes.exe程序的相对路径," "引号,空格都是英文输入状态下的。 起始位置项的引号总共两对" ",这个快捷方式相对启动程序的位置不能发生改变。 熟悉windows批处理的都习惯以cmd启动程序,没关系你可以将调用的explorer.exe改为你的cmd,然后以start命令打开即可,不过并不推荐这样做,具体原因不做陈述。一个小问题我已经阐述了半天了。注:之所以写的那么多是因为介绍原理,方便不了解的同学学习参考,不是为大神和拿来主义的同学准备的,就到这里了,其他系统下的方式类似,感兴趣的自己写吧。
上一篇: Python3的数据类型
下一篇: js--兼容写法