Happy Symlinking! π
Symlink Creator 2.0 is the largest update to the app so far. It brings a modern interface, localization, ARM64 support, safer input handling, clearer errors, improved long-path support, startup options, and a more reliable symlink-creation workflow.
Whatβs new
-
Modern Windows experience
- A redesigned WinUI 3 interface with a clearer source/destination layout, improved spacing, a resizable window, and system light/dark theme support
- A clearer administrator shield on the Create symlinks button
- Full source paths appear in tooltips when list entries are shortened
- Consistent tooltips now explain buttons, checkboxes, retained scripts, and symlink-related behavior
-
Localization
- Support for English, Simplified Chinese, Bengali, German, Spanish, French, Japanese, Korean, and Brazilian Portuguese
- The app automatically follows Windows language preferences
- A specific language can be selected for an individual launch with
--language <tag>
-
Startup customization
- Windows shortcuts and command-line launches can use:
--language <tag>--absolute-paths--retain-script--hide-success-dialog--no-elevation-warning
- These options configure the current launch without creating persistent application settings
- Windows shortcuts and command-line launches can use:
-
Improved file, folder, and path handling
- Drag-and-drop supports files, folders, and newline-separated path lists
- Arbitrary text, missing paths, and unsupported drag-and-drop formats are rejected instead of being added as sources
- Modern Windows file and folder pickers support selecting multiple folders
- Improved handling of long paths selected through Windows pickers or dragged from File Explorer
- Duplicate source entries are ignored case-insensitively
- Sources that would create duplicate destination names are detected before execution
- Existing destination entries are detected before any symlink command runs
-
Safer symlink creation
- Missing, empty, malformed, or unsupported source and destination paths now produce clearer errors
- Generated scripts safely handle spaces, Unicode characters, percent signs, and other special path content
- Script execution stops at the first failed symlink command instead of hiding an earlier failure
- Relative links use standard Windows path handling when source and destination share the same root
- Absolute links remain available through the checkbox or the
--absolute-pathsstartup option (#24) - Retained scripts are saved directly to the Desktop with unique filenames
-
Better elevation and error handling
- Only symlink creation requests administrator privileges; the application itself normally runs without elevation
- Canceling the administrator prompt produces a dedicated message
- Running the entire app as administrator shows a drag-and-drop warning, which can be suppressed for intentional elevated launches via the
--no-elevation-warningstartup option (#21) - Picker, drag-and-drop, validation, elevation, execution, and script failures now provide more specific messages
- Success dialogs can still be hidden without suppressing errors or canceled-operation messages
-
x64 and ARM64 releases
- Portable architecture-specific downloads:
Symlink.Creator.x64.zipSymlink.Creator.arm64.zip
- WinGet installs the appropriate architecture and required dependencies
- WinGet also provides the
symlinkcreatorcommand alias
- Portable architecture-specific downloads:
Reliability and project quality
Symlink planning, validation, script generation, execution, localization, startup options, path handling, and view-model behavior now have automated test coverage. Strict compiler, analyzer, formatting, and PowerShell lint checks are enforced.
GitHub Actions validates repository changes, builds and packages both release architectures, verifies their contents, and checks the generated WinGet metadata against those packages. Release ZIPs are created reproducibly and checked against their publish output.
Symlink Creator was rebuilt on .NET 10 and WinUI 3, providing a modern and maintainable foundation for future improvements.
Installation
WinGet is recommended because it installs the required runtime dependencies automatically:
winget install --id ArnobPaul.SymlinkCreator --exactFor a portable download, choose the ZIP matching your Windows architecture from the release assets. ZIP releases require the .NET 10 runtime, Windows App Runtime 2, and Microsoft Visual C++ runtime. See the README for installation commands.
Requirements
- Windows 10 version 1903 / build 18362 or newer
- x64 or ARM64 Windows
- Version 2.0 does not provide a 32-bit x86 build
Full Changelog: v1.3.0...v2.0.0