pip install -r requirements.txt
pip install pyinstallerpython -m PyInstaller FadCrypt.spec --clean --noconfirmCreates: dist/FadCrypt/FadCrypt.exe
python -m PyInstaller FadCryptCLI.spec --clean --noconfirmCreates: dist/FadCryptCLI/fadcrypt.exe
"C:\Program Files (x86)\Inno Setup 6\ISCC.exe" innosetup/FadCrypt-inno-setup-script.issCreates: dist/FadCryptSetup.exe
.\build-windows.ps1This builds both exes and optionally creates the installer.
Run FadCryptSetup.exe to install FadCrypt with:
- GUI shortcut: "FadCrypt" (launches GUI)
- CLI shortcut: "FadCrypt CLI" (launches TUI in console)
- Both added to
%PATH%for command-line access
FadCrypt.exe --gui
# or just: FadCrypt.exefadcrypt --cli # Interactive TUI
fadcrypt --lock file # Lock a file
fadcrypt --unlock file # Unlock a file
fadcrypt --list # List locked items- FadCrypt.exe: GUI application (PyQt6, no console window)
- fadcrypt.exe: CLI/TUI application (runs in native console)
- Both share same core code, differ only in console mode
- CLI: Run
fadcrypt --clifrom any terminal/PowerShell
- CLI: Run
FadCrypt.exefadcrypt --clifadcrypt --lock "C:\path\to\file.txt"fadcrypt --unlock "C:\path\to\file.txt"fadcrypt --listAfter installation, you can:
- Right-click any file/folder → "🔐 Lock with FadCrypt"
- Right-click any locked file/folder → "🔓 Unlock with FadCrypt"
Use Windows Control Panel → Programs → Uninstall "FadCrypt"
This will:
- Remove both executables
- Remove from PATH
- Remove context menu entries
- Remove Start Menu shortcuts
- Leave user config in
%APPDATA%\FadCrypt\(can be manually deleted)
PowerShell 7+ not found for CLI:
- Install PowerShell 7+ from: https://github.com/PowerShell/PowerShell/releases
- CLI mode requires pwsh.exe (PowerShell 7+)
Context menu not appearing:
- Restart File Explorer:
Ctrl+Shift+Esc→ Find explorer.exe → Restart - Or reinstall FadCrypt
Files in use error during unlock:
- Close any programs using the file
- Try again
For local development without installer:
# Run GUI
python FadCrypt.py --gui
# Run CLI/TUI
python FadCrypt.py --cli
# Run with verbose logging
python FadCrypt.py --cli --verbose