Crate dokan[−][src]
Dokan is a user mode file system for Windows. It allows anyone to safely and easily develop new file systems on Windows.
This crate is a Rust-friendly wrapper for Dokan, allowing you to create file systems using Rust.
In general, to create a file system with this library, you need to implement the
FileSystemHandler
trait, and pass it to Drive::mount
.
Please note that some of the constants from Win32 API that might be used when interacting with this crate are not provided directly here. However, you can easily find them in the winapi crate.
Structs
CreateFileInfo | Information about the opened file returned by |
DOKAN_IO_SECURITY_CONTEXT | |
DiskSpaceInfo | Disk space information returned by |
Drive | A builder that allows configuring and mounting a volume. |
FileInfo | The file information returned by |
FindData | File information provided by |
FindStreamData | Alternative stream information provided by |
MountFlags | Flags that control behavior of the mounted volume. |
MountPointInfo | Mount point information. |
OperationInfo | Information about the current operation. |
TokenHandle | A simple wrapper struct that holds the Win32 handle returned by
|
UserCreateFileFlags | The flags returned by |
VolumeInfo | Volume information returned by |
Enums
DebugStream | The output stream to write debug messages to. |
FileTimeInfo | The operation to perform on a file’s corresponding time information. |
FillDataError | The error type for the fill-data callbacks. |
MountError | The error type for |
OperationError | The error type for callbacks of |
Constants
DRIVER_NAME | Name of Dokan’s kernel driver file. |
MAJOR_API_VERSION | The major version number of Dokan that this wrapper is targeting. |
NP_NAME | Name of Dokan’s network provider. |
WRAPPER_VERSION | The version of Dokan that this wrapper is targeting. |
Traits
FileSystemHandler | Types that implements this trait can handle file system operations for a mounted volume. |
Functions
driver_version | Gets version of the Dokan driver installed on the current system. |
get_mount_point_list | Gets a list of active Dokan mount points. |
is_name_in_expression | Checks whether the |
lib_version | Gets version of the loaded Dokan library. |
map_kernel_to_user_create_file_flags | Converts the arguments passed to |
notify_create | Notifies Dokan that a file or directory has been created. |
notify_delete | Notifies Dokan that a file or directory has been deleted. |
notify_rename | Notifies Dokan that a file or directory has been renamed. |
notify_update | Notifies Dokan that attributes of a file or directory has been changed. |
notify_xattr_update | Notifies Dokan that extended attributes of a file or directory has been changed. |
set_debug_stream | Set the output stream to write debug messages to. |
set_driver_debug_mode | Enable or disable debug mode of the kernel driver; |
set_lib_debug_mode | Enable or disable debug mode of the user mode library. |
unmount | Unmount a Dokan volume from the specified mount point. |
Type Definitions
PDOKAN_IO_SECURITY_CONTEXT |