#windows #shortcut #lnk

mslnk

create windows shortcuts (lnk files)

9 releases

0.1.8 May 27, 2022
0.1.7 Oct 19, 2021
0.1.6 Aug 10, 2021

#66 in Windows APIs

Download history 97/week @ 2023-11-20 80/week @ 2023-11-27 67/week @ 2023-12-04 89/week @ 2023-12-11 114/week @ 2023-12-18 74/week @ 2023-12-25 78/week @ 2024-01-01 80/week @ 2024-01-08 83/week @ 2024-01-15 70/week @ 2024-01-22 78/week @ 2024-01-29 90/week @ 2024-02-05 118/week @ 2024-02-12 149/week @ 2024-02-19 167/week @ 2024-02-26 136/week @ 2024-03-04

587 downloads per month
Used in 2 crates

MIT license

55KB
937 lines

mslnk

Rust implementation to create Windows shortcut (ms shell .lnk),theoretically support WIndows 7/8/10/11. Tested on Windows 10,11.

Usage

Add this to your Cargo.toml:

[dependencies]
mslnk = "0.1.8"

examole to create lnk

use mslnk::ShellLink;

let target = r"C:\Users\Admin\Desktop\qq aa\qiuqiu.exe";
let lnk = r"C:\Users\Admin\Desktop\qq.lnk";
let sl = ShellLink::new(target).unwrap();
sl.create_lnk(lnk).unwrap();

Error handling

use mslnk::{ShellLink,MSLinkError};

fn main()->Result<(),ApplicationError> {
    let target = r"C:\Users\Admin\Desktop\qq aa\qiuqiu.exe";
    let lnk = r"C:\Users\Admin\Desktop\qq.lnk";
    let sl = ShellLink::new(target)?;
    sl.create_lnk(lnk)?;
}

entirely written in rust,no external command,support unicode string ,such as Chinese characters. Most of code are from lnk-rs for parsing and writing lnk file.

reference

Dependencies

~195–295KB