Skip to content

navanem/navanem_SuperDelete

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

31 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SuperDelete icon
SuperDelete

Safely delete files and folders with very long paths (more than 260 characters) — from the command line or a modern desktop app.

SuperDelete desktop app


About

Windows normally blocks file paths longer than the classic MAX_PATH of 260 characters, which makes some files and folders impossible to delete with Explorer or del/rmdir. SuperDelete removes them by using extended-length paths (\\?\) together with the Unicode Win32 functions for enumerating and deleting files — supporting paths up to 32 767 characters. It can also bypass ACL checks when the user has administrative rights on the drive (useful when a disk was moved from another machine or Windows installation).

More on the mechanism: MSDN — Naming Files, Paths, and Namespaces, section Maximum Path Length Limitation.

SuperDelete ships in two forms that share one deletion engine:

  • SuperDelete.exe — the original command-line tool (same flags, same behavior).
  • SuperDeleteUI.exe — a sober, modern WPF desktop app, so a non-technical user can delete a long path safely without using a terminal.

Download

Grab the latest pre-built, self-contained executables from the Releases page — no .NET installation required, just download and run:

File What it is
SuperDeleteUI.exe The desktop app (double-click to launch).
SuperDelete.exe The command-line tool.

For Bypass ACL, right-click the executable → Run as administrator.


Project layout

Project Type Purpose
src/SuperDelete.Core class library (net8.0-windows) The shared deletion engine: long-path delete, preview/analysis, result models, service interfaces. Single source of truth.
src/SuperDelete.Cli console app (net8.0-windows) Thin CLI over the engine. Builds to SuperDelete.exe.
src/SuperDelete.App WPF app (net8.0-windows) The desktop UI over the same engine. Builds to SuperDeleteUI.exe.

The engine is exposed through interfaces (IDeletionService, IPathAnalyzer) and reports progress via IProgress<DeletionProgress>, so it carries no console/UI dependency. See docs/NOTES.md for design decisions and future improvements.


Build from source

Requires the .NET 8 SDK (dotnet --version ≥ 8.0). From the repository root:

dotnet build SuperDelete.sln -c Release

To produce the self-contained single-file executables yourself:

dotnet publish src/SuperDelete.App -c Release -r win-x64 --self-contained true ^
  -p:PublishSingleFile=true -p:IncludeNativeLibrariesForSelfExtract=true -p:EnableCompressionInSingleFile=true -o dist/ui
dotnet publish src/SuperDelete.Cli -c Release -r win-x64 --self-contained true ^
  -p:PublishSingleFile=true -p:IncludeNativeLibrariesForSelfExtract=true -p:EnableCompressionInSingleFile=true -o dist/cli

The project is Windows-only: it depends on Win32 APIs (kernel32, advapi32, ntdll) and WPF.


Run the CLI

The CLI is unchanged from the original tool. It takes a single file or folder path plus optional switches.

SuperDelete.exe <full path to file or folder>           # with confirmation
SuperDelete.exe --silentMode <path>                     # or -s : skip the confirmation prompt
SuperDelete.exe --bypassAcl <path>                      # bypass ACLs (run as Administrator)
SuperDelete.exe --printStackTrace <path>                # print full call stack on error

Switches can be combined and the order does not matter. During development:

dotnet run --project src/SuperDelete.Cli -- -s "C:\some\very\long\path"

Run the desktop app

Double-click SuperDeleteUI.exe, or during development:

dotnet run --project src/SuperDelete.App

To use Bypass ACL from the UI, start it as administrator — the option is available either way, and an indicator reminds you when it is enabled.

Screens

The window is a single, sober utility screen organized top-to-bottom:

  1. Header — app name, version, one-line description, a Help → About menu, and a Dark mode toggle.
  2. File or folder to delete — a path box plus Browse file… / Browse folder…. You can also paste a path or drag-and-drop a file/folder anywhere onto the window. A Recent dropdown lists paths used during the session.
  3. ActionsAnalyze / Preview, Delete (danger-styled), and Cancel (while busy). A progress bar shows the current item and a live files · folders count.
  4. Summary (after Analyze) — type (file/folder), existence, path length with a badge when it exceeds 260 characters, item counts, an amber note for access/ACL or reparse-point concerns, and a red warning before recursive deletion.
  5. Advanced optionsPreview only (dry run, deletes nothing), Bypass ACL (with a visible "enabled" indicator), Show diagnostic details, and a short explanation of the long-path limitation.
  6. Activity log — timestamped, real-time log with Clear and a collapsible Technical details panel (stack traces) shown when something fails.
  7. Status bar — a colored final status: green = success, amber = cancelled/partial, red = failure.

Safety behaviors: a real deletion always asks for an explicit confirmation naming the target and item count; Preview only never changes anything; the UI stays responsive during long deletes and the operation can be cancelled mid-run.


License

Apache License 2.0 — see LICENSE.

About

SuperDelete is a Windows command line application (.NET) that can be used to delete files and directories with very long paths - longer than 260 characters.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages

  • C# 100.0%