3 releases (stable)

1.0.1 Mar 6, 2021
0.1.0 Mar 6, 2021

#142 in Windows APIs

Download history 108/week @ 2023-12-15 146/week @ 2023-12-22 150/week @ 2023-12-29 107/week @ 2024-01-05 108/week @ 2024-01-12 95/week @ 2024-01-19 173/week @ 2024-01-26 143/week @ 2024-02-02 96/week @ 2024-02-09 122/week @ 2024-02-16 142/week @ 2024-02-23 110/week @ 2024-03-01 178/week @ 2024-03-08 116/week @ 2024-03-15 125/week @ 2024-03-22 125/week @ 2024-03-29

556 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