NAME

Parse::Lnk - A cross-platform, depencency free, Windows shortcut (.lnk) meta data parser.

VERSION

Version 0.02

SYNOPSIS

This module reads Win32 shortcuts (*.lnk files) to obtain the meta data in them.

Its goal is to be able to resolve the path they point to (along with other data), from any platform/OS, without the need for depencencies.

Its use is very simple:

use Parse::Lnk;

my $data = Parse::Lnk->from($filename);

# $data is now a hashref if the file was parsed successfully.
# undef if not.

EXPORT

Nothing is exported by default. But you can import more convenient functions:

use Parse::Lnk qw(parse_lnk);

my $data = parse_lnk $filename;

# $data is now a hashref if the file was parsed successfully.
# undef if not.

Or:

use Parse::Lnk qw(resolve_lnk);

my $path = resolve_lnk $filename;

# $path is now a string with the path the lnk file points to.
# undef if the lnk file was not parsed successfully.

SUBROUTINES/METHODS

from

The only available method is from. You can use it if you do not import the convinience functions previously described:

use Parse::Lnk;

my $data = Parse::Lnk->from($filename);

# $data is now a hashref if the file was parsed successfully.
# undef if not.

AUTHOR

Francisco Zarabozo, <zarabozo at cpan.org>

BUGS

I'm sure there are many. I haven't found bugs with the lnk files I've tested it. If you find a bug or you have a problem reading a shortcut/lnk file, please don't hesitate to report it and don't forget to include the file in question. If you are on Windows, you will have to zip the file in a way that is the lnk file the one being zipped and not the actual directory/file it is pointing to. I promise to look at any report and work on a solution as fast as I can.

Please report any bugs or feature requests to bug-parse-lnk at rt.cpan.org, or through the web interface at https://rt.cpan.org/NoAuth/ReportBug.html?Queue=Parse-Lnk. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.

SUPPORT

You can find documentation for this module with the perldoc command.

perldoc Parse::Lnk

You can also look for information at:

ACKNOWLEDGEMENTS

LICENSE AND COPYRIGHT

This software is copyright (c) 2021 by Francisco Zarabozo.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.