[][src]Crate parselnk

Parse windows .lnk files using only safe rust. Windows lnk files describe links to data objects as defined by this specification.

Examples

You can process the Lnk data from a memory buffer that implements std::io::Read.

use parselnk::Lnk;
use std::convert::TryFrom;

let mut lnk_data: Vec<u8> = Vec::new();
// read your link into `lnk_data` here...
let lnk = Lnk::try_from(lnk_data);

Or you can process any Lnk on disk.

use parselnk::Lnk;
use std::convert::TryFrom;

let path = std::path::Path::new("c:\\users\\me\\shortcut.lnk");

let lnk = Lnk::try_from(path).unwrap();

Re-exports

pub use extra_data::*;
pub use header::*;
pub use link_info::*;
pub use link_target_id_list::*;
pub use string_data::*;

Modules

error

Error types used for parselnk.

extra_data

Types defining the ExtraData type.

header

Definitions for the
ShellLinkHeader type.

link_info

Definitions for the LinkInfo type.

link_target_id_list

Definitions for the LinkTargetIdList type.

string_data

Definitions for the StringData type.

Structs

Lnk

Represents a windows .lnk file

Type Definitions

Result

Result type wrapping around parselnk::error::Error