9 releases
0.1.8 | May 27, 2022 |
---|---|
0.1.7 | Oct 19, 2021 |
0.1.6 | Aug 10, 2021 |
#84 in Windows APIs
6,106 downloads per month
Used in 4 crates
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
- microsoft shell lnk doc click here ms-shllink
- more details on linktarget struct ITEMIDLIST
- example instance on ITEMIDLIST see LNKとShell item
Dependencies
~205–305KB