3 releases (breaking)

new 0.4.0 Feb 17, 2025
0.3.0 Aug 9, 2024
0.2.0 Mar 18, 2024

#337 in Windows APIs

Download history 289/week @ 2024-10-28 187/week @ 2024-11-04 153/week @ 2024-11-11 98/week @ 2024-11-18 130/week @ 2024-11-25 114/week @ 2024-12-02 145/week @ 2024-12-09 191/week @ 2024-12-16 69/week @ 2024-12-23 56/week @ 2024-12-30 110/week @ 2025-01-06 143/week @ 2025-01-13 152/week @ 2025-01-20 82/week @ 2025-01-27 111/week @ 2025-02-03 194/week @ 2025-02-10

554 downloads per month
Used in winfsp_wrs

MIT license

365KB
9K SLoC

Winfsp Wrapper Rust

actions status

Requirements

WinFSP must be installed:

choco install winfsp

Run example

cargo run -p memfs my-mountpoint

Testing

Download winfsp-tests: https://github.com/winfsp/winfsp/releases/

winfsp-tests itself depends on WinFSP's DLL, hence the easiest way to avoid troubles is to put the winfsp-tests executable in the C:/Program Files (x86)/WinFsp/bin/ install folder (the alternative being to copy C:/Program Files (x86)/WinFsp/bin/winfsp-x64.dll in the directory where winfsp-tests executable resides).

Re-generate WinFSP bindgen code

(This is only needed when WinFSP headers change)

Rust bindgen CLI must be installed

cargo install bindgen-cli

On top of that, Clang is needed by rust-bindgen for parsing WinFSP C++ API headers.

To install Clang (also see rust-bindgen doc):

winget install LLVM.LLVM
set LIBCLANG_PATH="C:\Program Files\LLVM\bin"

Then to re-generate:

python scripts/generate_bindgen.py  winfsp_wrs_sys/src/gen.rs

No runtime deps

~0–12MB
~189K SLoC