Skip to main content

Crate wincent

Crate wincent 

Source
Expand description

§wincent

wincent is a Rust library for managing Windows Quick Access items, providing a safe and efficient interface to interact with Windows Quick Access functionality.

§Key Features

§Core Operations

  • Query Quick Access items (recent files and frequent folders)
  • Add/Remove items to/from Quick Access
  • Clear Quick Access categories
  • Check item existence

§Advanced Management

  • Native Windows API fast paths with PowerShell fallbacks
  • Timeout protection for shell operations
  • Force refresh support

§System Integration

  • Windows API integration for reliable operations
  • PowerShell script execution for complex tasks
  • Cross-version Windows support

§Quick Start

use wincent::prelude::*;

fn main() -> WincentResult<()> {
    // Create manager instance
    let manager = QuickAccessManager::new();
     
    // Add a file to Recent Files
    manager.add_item(
        "C:\\path\\to\\file.txt",
        QuickAccess::RecentFiles,
        AddOptions::new().refresh_recent_files(),
    )?;
     
    // Query all Quick Access items as PathBuf values
    let items = manager.get_item_paths(QuickAccess::All)?;
    println!("Quick Access items: {:?}", items);
     
    Ok(())
}

§Implementation Details

  • Implements timeout mechanism to prevent deadlocks
  • Supports both Windows API and PowerShell operations
  • Handles system-specific edge cases

§Safety and Reliability

  • Validates all paths before operations
  • Provides comprehensive error handling
  • Supports force refresh for consistency
  • Manages system resources properly

§Best Practices

Re-exports§

pub use crate::manager::AddOptions;
pub use crate::manager::QuickAccessItem;
pub use crate::manager::RemoveOptions;

Modules§

error
Error handling and error type definitions
manager
Synchronous facade for Windows Quick Access operations.
prelude
Convenient re-exports for common Quick Access operations.

Structs§

BatchOptions
Options for batch operations.
BatchResult
Result of a batch operation containing succeeded and failed items.
EmptyOptions
Options for clearing Quick Access items.
QuickAccessLock
Guard that holds locks on Explorer Quick Access backing files.
QuickAccessUnlockFailure
A .lnk file that could not be deleted while unlocking.
QuickAccessUnlockOptions
Options used when unlocking Quick Access backing files.
QuickAccessUnlockReport
Report returned when unlocking Quick Access backing files.
RetryPolicy
Retry policy configuration

Enums§

QuickAccess
Quick Access categories supported by this crate.
QuickAccessLockTarget
Quick Access backing file set to lock.

Type Aliases§

WincentResult
Result type used by wincent APIs.