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 |