/lnk-parse

MS Windows LNK file parser

Primary LanguagePerlGNU General Public License v2.0GPL-2.0


lnk-parse

Copyright 2006 Jacob Cunningham jakec76@users.sourceforge.net

Copyright 2016 Loïc Corbasson loic.corbasson@gmail.com

Distributed under the GNU General Public License v2 or later.

Please report any issues here.


About

lnk-parse.pl is a Microsoft Windows .lnk file parser written in Perl. It is based on the structure of .lnk files as documented in The Windows Shortcut File Format by Jesse Hager with a few exceptions1.

Jacob Cunningham has tested this using Perl version 5.8.2 under Linux and Perl 5.8.6 ActiveState Binary Build 811 on Windows 2000 with LNK files from Windows 2000/XP/2003.

Usage

lnk-parse.pl <filename.lnk>


Footnotes

1 Exceptions: The output of this script was tested by Jacob Cunningham against the output of commercial software to verify accuracy. During his rigorous testing he discovered that the following corrections need to be made to the The Windows Shortcut File Format document, version 1.0:

  1. The Last Access Time is actually at header location 0x24 and the Modification Time is actually at header offset 0x2C;
  2. The offset 0xC in the Network Volume Table contains a long integer with the offset of the Mapped Network Drive letter if present, otherwise it is set to zero.