|
本帖最后由 2013_top398 于 2014-3-30 23:58 编辑
近日研究了一下 COM,又结合一个关于快捷方式的贴子中的探讨,编写了一个创建快捷方式的程序。这主要是为了实践,不是说非得要重造个轮子。
一、命令行参数:
- lnk.exe l=<lnk文件名> t=<目标文件名> [w=<工作目录名>] [a=<参数列表>] [n=<备注>] [i=<图标文件名>] [x=<图标索引>] [k=<快捷键>] [s=<显示方式>]
复制代码
参数不区分大小写,顺序任意,如有重复指定,以后指定的为准。
二、快捷键和显示方式:
(一)快捷键
1、定义为:[辅键]+<主键>。
2、辅键为 C|A|S (Ctrl|Alt|Shift)的任意组合,可省略。
3、+ 号不能省略。
4、主键为 A-Z|0-9|F1-F12 之一,不能省略。
(二)显示方式
1、X = 最大化,I = 最小化, N = 正常
三、示例:
- lnk.exe t=lnk.exe l=r:\xyz.lnk
复制代码
创建 lnk.exe 的快捷方式,没有给出全路径时,自动补全,但并不检查目标是否存在。
- lnk t=“c:\Program Files (x86)\Internet Explorer\iexplore.exe” l=r:\ie10.lnk k=SAC+F12
复制代码
创建一个 IE 的快捷方式,因为目标路径有空格,要加上双引号。在没有给出工作目录时,自动用目标所在目录作为工作目录。
要创建那个贴子中楼主要求的快捷方式,命令行如下:
- lnk l=%userprofile%\desktop\chrome.lnk t="C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" s=X k=+F3 i="C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" n="Chrome" w="C:\Program Files (x86)\Google\Chrome\Application" a="--user-agent="Mozilla/5.0 (iPhone; U; CPU iPhone OS 4_3_1 like Mac OS X; zh-tw) AppleWebKit/533.17.9 (KHTML, like Gecko) Version/5.0.2 Mobile/8G4 Safari/6533.18.5""
复制代码
注意,控制台下的命令行参数传递中,用 \" 来表示一个双引号。
其中 图标文件是目标本身,可省略;图标序号为0,已省略;工作目录也是目标所在目录,也可省略。
32 位可执行文件大小 63,488 字节,可用工具压缩。
lnk.rar
(24.28 KB, 下载次数: 58)
|
|