3 releases (stable)

1.0.1 Mar 6, 2021
0.1.0 Mar 6, 2021

#171 in Windows APIs

Download history 236/week @ 2024-11-16 166/week @ 2024-11-23 293/week @ 2024-11-30 263/week @ 2024-12-07 254/week @ 2024-12-14 93/week @ 2024-12-21 145/week @ 2024-12-28 384/week @ 2025-01-04 350/week @ 2025-01-11 275/week @ 2025-01-18 247/week @ 2025-01-25 348/week @ 2025-02-01 349/week @ 2025-02-08 278/week @ 2025-02-15 381/week @ 2025-02-22 267/week @ 2025-03-01

1,341 downloads per month
Used in 7 crates (via pathos)

Apache-2.0 OR MIT

12KB
354 lines

windirs

Documentation

A safe wrapper around SHGetKnownFolderPath.

Usage

use windirs::{Error, FolderId, get_known_folder};

let local_app_data_path = match get_known_folder(FolderId::LocalAppData) {
    Ok(path) => path,
    Err(err) => match err {
        // Some folder ids point to virtual paths, so, yeah.
        Error::Virtual => panic!(),
        // When no folder is found.
        Error::NotFound => panic!(),
        // Can occur for a variety of reasons, such as this folder id being unknown to this OS.
        Error::InvalidArg(io_error) => panic!(),
        // Any other potential OS error that could happen, but is not defined by the API.
        Error::Other(io_error) => panic!(),
    }
}

let user_home_path = get_known_folder(FolderId::Profile).unwrap();

License

This project is licensed under either of

at your option.

Dependencies

~225KB