Rust-based document scanner with real Windows WIA scanner support
# 1. Build
cargo build --release
# 2. Run - that's it!
target\release\scanner_helper.exe
# The .exe:
# - Hides console window automatically
# - Starts service in background
# - Everything embedded (no external files needed!)
# 3. Access scanner
http://localhost:8080/index.htmlმხოლოდ ერთი .exe ფაილი - არაფერი სხვა არ არის საჭირო! 🎉
# 1. Build
cargo build --release
# 2. Install to Windows Startup
install_full_startup.bat
# 3. Reboot or Logout
# Services will start automatically and run hidden!
# 4. Open browser anytime
http://localhost:8080/index.html# 1. Build
cargo build --release
# 2. Run scanner service
target\release\scanner_helper.exe
# 3. Run PHP server (new terminal)
php -S localhost:8080
# 4. Open browser
http://localhost:8080/index.html
# 5. Scan!
Place document on scanner → Click "Scan Document" → Wait 10-20s → Done!- 🖨️ Real WIA Scanner - Uses your actual scanner hardware
- 📄 300 DPI - High quality scanning
- 🎨 Color/Grayscale - Configurable
- ⚡ PowerShell + Rust - Fast and reliable
- 🌐 Web UI - Easy to use browser interface
- 🔒 Hidden Mode - No windows, completely silent background operation
- 📦 Standalone - Single .exe, no external files needed
- ✅ JSON Safe - Fixed "Bad escaped character" errors
| File | Description |
|---|---|
| STANDALONE_GUIDE.md | 📦 Standalone - ერთი .exe ყველაფრით! |
| SIMPLE_START.md | ⚡ 2 ნაბიჯი - სწრაფი დაწყება |
| START_HERE.md | 🚀 Begin here! |
| AUTOSTART_GUIDE.md | 📜 Auto-start scripts (optional) |
| FINAL_SOLUTION.md | 📋 Complete solution |
| README_REAL_SCANNER.md | 🔧 Detailed explanation |
Browser → Rust Server → PowerShell Script → WIA API → Scanner → Document
- User clicks "Scan Document" in browser
- Rust server executes PowerShell WIA script
- PowerShell connects to scanner via WIA API
- Scanner scans the document
- Image saved as BMP file
- Rust reads and returns to browser
windowsRust/
├── scan_wia.ps1 ← PowerShell WIA script
├── target/release/scanner_helper.exe ← Run this
├── src/main.rs ← Rust implementation
├── index.html ← Web UI
└── README.md ← This file
- ✅ Real scanner integration (not mock data!)
- ✅ 300 DPI high quality
- ✅ Color/Grayscale/BW modes
- ✅ BMP format
- ✅ Windows WIA native API
- ✅ Web interface
- ✅ Base64 encoding
- ✅ Error handling
- Windows 10/11
- Scanner connected (USB)
- Scanner drivers installed
- Rust toolchain
- PHP (for web server)
→ Check scanner is ON and connected via USB
→ Ensure scan_wia.ps1 is in the same directory as the .exe
→ Change DPI in src/main.rs:57 → "-DPI", "150"
→ Run as Administrator
[INFO] Starting real WIA scanner...
[INFO] Calling PowerShell WIA script...
[INFO] Executing scan...
[PowerShell Output]
[INFO] WIA Device Manager created
[INFO] Connected to scanner: HP LaserJet Scanner
[INFO] Starting scan operation...
[SUCCESS] Scan completed! Size: 25434 KB
[SUCCESS] Scan completed! Size: 25434 KB
[SUCCESS] Returning scan data to client
Before: 🔵 1 pixel blue dot (mock data)
Now: 📄 Real scanned document from your scanner!
Build on Windows and test with your real scanner! 🚀
Questions? See START_HERE.md