Windows快捷方式文件格式解析2010-12-22Cuick最近一直作linux项目,很久没来VC知识库了,先向大家问个好!现在拜个晚 年不是很晚吧?(不是说有心拜年八月十五也不晚吗!!嘿嘿)好了,言归正传。大家知道通过IShellLink接口可以得到快捷方式的各种属 性。具体怎么做,网上有很多文章,这里就不介绍了。现在主要是分析一下快捷 方式文件的格式,并且自己写一个解析程序。为了方便大家理解,解说完每个段后附上一个快捷方式对应部分的事例数据 并附内容解说。这里以Windows Media Player在桌面上的快捷方式为例。一、文件的整体结构

二、文件头文件头结构,参照下面表格:
Offset | Size/Type | Description |
0h | 1 dword | 值常为0000004CH,为字符"L" |
4h | 16 bytes | GUID |
①14h | 1 dword | Flags,用来标识快捷方式文件中有哪些可选属性,后面有表 单独解释每一位的意义。 |
②18h | 1 dword | 目标文件属性,后面解释。 |
1ch | 1 qword | 文件创建时间 |
24h | 1 qword | 文件修改时间 |
2ch | 1 qword | 文件最后一次访问时间 |
34h | 1 dword | 目标文件长度 |
38h | 1 dword | 自定义图标个数, |
3ch | 1 dword | 目标文件执行时窗口显示方式:1、 正常显示2、 最小化3、 最大化 |
40h | 1 dword | 热键 |
44h | 2 dword | 暂时还不清楚用途值常为0 |