Skip to content

artichoke/known-folders-rs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

271 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

known-folders-rs

GitHub Actions Twitter
Crate API API trunk

Retrieves the full path of a known folder identified by the folder's KNOWNFOLDERID on Windows systems using SHGetKnownFolderPath and the Known Folders API.

The Known Folders API first appeared in Windows Vista.

Usage

Add this to your Cargo.toml:

[dependencies]
known-folders = "1.4.2"

Then resolve well-known directories like this:

use known_folders::{get_known_folder_path, KnownFolder};

let profile_dir = get_known_folder_path(KnownFolder::Profile);

You can test this crate works on your platform by running the example:

cargo run --example get_profile_dir

Implementation

known-folders-rs binds directly to Win32 using windows_sys. Semver-incompatible windows_sys upgrades can be made in minor releases.

Note that this crate is completely empty on non-Windows platforms.

Minimum Supported Rust Version

This crate requires at least Rust 1.60.0. This version can be bumped in minor releases.

Development

This repository uses mise to manage the local development toolchain declared in mise.toml, including Node.js, Python, Ruby, Rust, uv, cargo-deny, and zizmor. For Rust, mise installs the stable toolchain via rustup. Nightly-only tasks in Rakefile continue to use rustup on demand.

Install the shared toolchain with:

mise install

Then install the repo-local npm and Ruby dependencies with:

npm install
bundle install

YAML linting runs through the locked uv environment in uv.lock:

uv run yamllint --strict --format github .

License

known-folders-rs is distributed under the terms of either the MIT License or the Apache License (Version 2.0).

About

๐ŸชŸ ๐Ÿ“ Rust bindings to the Known Folders API on Windows

Topics

Resources

License

Apache-2.0, MIT licenses found

Licenses found

Apache-2.0
LICENSE-APACHE
MIT
LICENSE-MIT

Stars

Watchers

Forks

Packages

 
 
 

Contributors

โšก