See also: customization.md
A keyboard-driven toolbar extension for Windows Explorer that eliminates the friction between file navigation and productivity tools.
Windows Explorer offers virtually no customisation beyond appearance. When you need to open a terminal, launch an editor, or run a script on files you're viewing, you face constant friction: copying paths, switching windows, typing commands, or navigating through nested context menus. Every action requires multiple intermediate steps that break your flow.
While brilliant tools like QTTabBar have extended Windows functionality dramatically and almost addressed those concerns, they have become increasingly fragile due to being tightly coupled with Explorer internals. Microsoft's dramatic changes to these internals in Windows 11 have rendered QTTabBar (and similar tools) unreliable. Thus, in some cases, QTTabBar is unable to even start.
Explobar provides immediate access to your productivity tools right where you work - in Explorer. Press a keyboard shortcut (or the launch), and a toolbar appears at your cursor with instant access to any command, application, or custom action. No copying paths. No switching windows. No mouse hunting. Just navigation → selection → action.
The customisation of Explobar is going far beyond controlling the user experience. It is better to be compared to the concept of automation. Anything you can do on your OS, you can trigger from the toolbar that you fully control. Below is an example of a SW developer toolbar customised with the additional buttons:
Zero Friction UX
- Tools appear instantly where your focus is
- Selected files and current folder are automatically available
- Single keypress or click executes any action
- No intermediate steps between thought and execution
Customisation for Everyone
- Simple: Edit a YAML file to add buttons and shortcuts
- Powerful: Write .NET plugins for complex workflows
- Both approaches work together seamlessly
Safe & Reliable
- Runs in its own process - Explorer crashes won't affect it, and it won't crash Explorer
- No external dependencies except Explorer itself
- No services, no elevated privileges required
- Works entirely through standard Windows automation
Zero-Friction Deployment
- Just an executable and
YamlDotNet.dll(get it with WinGet) - Run it once, configure once, forget it
- WinGet and Chocolatey packages coming soon
- 🎯 Keyboard-Triggered Toolbar - Appears on-demand at cursor position
- ⚡ Stock Actions - Built-in operations for common tasks
- 🔧 Custom Commands - Execute any application with automatic path injection
- ⌨️ Global Shortcuts - Assign hotkeys to any toolbar action
- 🔌 Plugin System - Extend with .NET assemblies for complex workflows
- 📂 Favorites & Quick Access - Folders and applications at your fingertips
- 📜 Explorer History - Automatically tracked, always available
- 🎨 Icon Browser - Preview and extract icons from any file (shell32.dll, imageres.dll, etc.)
- 🔄 Live Configuration - Changes apply immediately, no restart
- 🌙 Dark Theme - Optional dark mode for comfortable low-light use
- In th command prompt, execute:
winget install explobar - Start Explobar with
Win+R > Type "explobar" > Press Enter. - If you want to start it with Windows, right-click the tray menu and select
Start with Windows.
Requirements: Windows 10/11, .NET Framework 4.8.1+
- Launch: Run Explobar.exe (minimizes to system tray)
- Navigate: Open any folder in Windows Explorer
- Activate: Press
Shift+Escape(configurable) OR click the embedded Explorer button - Execute: Click any button or press
Escapeto dismiss
The toolbar appears where your cursor is, with full context of your current folder and selected files.
Explobar automatically embeds a small clickable button in each Explorer window for instant toolbar access:
- Location: Appears in the upper area of each Explorer window (default: 200 pixels from left edge)
- Function: Click to launch the toolbar at your cursor position
- Multi-Tab Support: Works with Windows 11 multi-tab Explorer, adapting as you switch tabs
- Customization: Position can be adjusted or button can be disabled entirely (see Configuration)
This provides a mouse-friendly alternative to the keyboard shortcut, keeping toolbar access always visible and just one click away.
Configuration file: %LocalAppData%\Explobar\toolbar-items.yaml
Settings:
ButtonSize: 24
ShortcutKey: Shift+Escape
Applications:
- Path: notepad.exe
- Name: Calculator
Path: calc.exe
- Name: Terminal
Path: wt.exe
Arguments: '-d %c%'
Items:
- Path: '{new-file}' # Built-in: create text file
- Path: '{new-folder}' # Built-in: create folder
- Path: '{separator}' # Visual separator
- Path: 'notepad.exe' # Custom: launch notepad
Arguments: '%f%' # Pass selected file
Tooltip: 'Edit in Notepad'Settings:
ButtonSize- Icon size in pixels (default: 24)ShortcutKey- Keyboard shortcut to show toolbar (default: Shift+Escape)HistorySize- Number of recent folders to remember (default: 10)ShowConsoleAtStartup- Show debug console on startup (default: false)DarkTheme- Enable dark theme for toolbar (default: false)DisableExplorerLaunchButton- Hide the embedded Explorer button (default: false)ExplorerButtonXPosition- Horizontal position of Explorer button from left edge in pixels (default: 200)IndexOfButtonUnderMouse- Controls which button appears under cursor when toolbar opens (default: 0)0= Center the toolbar under cursor- Positive values = 1-based index from left (1 = first button, 2 = second, etc.)
- Negative values = 1-based index from right (-1 = last button, -2 = second-to-last, etc.)
Items: Toolbar buttons (stock or custom)
Favorites: Quick-access folder list
Applications: Quick-launch application list (object format with Name, Path, Arguments, WorkingDir)
%f%- First selected file (quoted)%c%- Current directory (quoted)%Variable%- Any environment variable
{new-tab}- New Explorer tab{new-file}- New text file in current folder{new-folder}- New folder in current folder{from-clipboard}- Navigate to path from clipboard{recent}- Recently visited folders menu{favorites}- Favorite folders menu{applications}- Favorite applications menu{props}- File/folder properties dialog{icons}- Icon browser - browse and extract icons from any file{separator}- Visual separator{app-config}- Configuration and tools menu
Items:
- Path: 'wt.exe'
Arguments: '-d %c%'
Icon: 'cmd.exe'
Tooltip: 'Windows Terminal'
Shortcut: 'Ctrl+Alt+T'Example: Hidden, Shortcut-Only Command
Items:
- Path: 'calc.exe'
Shortcut: 'Ctrl+Alt+C'
SystemWide: true # Works even when Explorer isn't focused
Hidden: true # No toolbar button, keyboard-onlySettings:
ExplorerButtonXPosition: 150 # Move button to 150px from left edge
# DisableExplorerLaunchButton: true # Uncomment to hide the button entirelyFor complete configuration reference, see docs/customizaion.md.
The Icon Browser allows you to preview and extract icons from any file containing icon resources (executables, DLLs, icon files).
Access:
- Toolbar button:
{icons} - System tray: Right-click → "Icon Browser"
- App Config menu:
{app-config}→ "Preview icons"
Features:
- Browse icons from system files (shell32.dll, imageres.dll, etc.)
- Extract icons from executables and DLLs
- View icon index numbers for configuration
- Recent file history for quick access
- Copy icon paths and indices for use in toolbar configuration
Common Icon Sources:
shell32.dll- Classic Windows icons (folders, files, system)imageres.dll- Modern Windows icons (Windows 7+)sud.dll- User account and security icons- Any
.exe,.dll, or.icofile
Extend Explobar with custom .NET plugins for workflows that need more than launching applications.
1. C# Source Files (Recommended for Quick Development)
- Write C# code in
.csfiles - Auto-compiled at runtime
- No build tools required
- Perfect for simple plugins and quick prototyping
- Template: Generate via System Tray → Development → Create Plugin
2. Pre-compiled DLLs (For Complex Projects)
- Traditional .NET development
- Full IDE support and debugging
- Better for complex workflows
- Target .NET Framework 4.7.2
using Explobar;
using System.Windows.Forms;
public class HelloButton : CustomButton
{
public HelloButton()
{
IconIndex = 1;
IconPath = "shell32.dll";
Tooltip = "Say Hello";
}
public override void OnClick(ClickArgs args)
{
MessageBox.Show($"Hello from: {args.Context.RootPath}");
}
}Items:
# C# source file (auto-compiled)
- Path: '{C:\Plugins\HelloButton.cs}'
# Pre-compiled DLL
- Path: '{C:\Plugins\MyTools.dll,HelloButton}'Important: Plugin paths must be enclosed in curly brackets {}.
For complete plugin development guide, see customization.md.
Toolbar doesn't appear
- Ensure Explorer window has focus
- Check shortcut key isn't conflicting with other applications. Use PowerToys to resolve any shortkey conflicts.
- Verify mouse cursor is over Explorer window
Configuration changes not applying
- Check YAML syntax (use online validator)
- Review console for errors: Set
ShowConsoleAtStartup: true - Restart Explobar if necessary
Toolbar state issues
- Use "Restart Explorer" from
{app-config}menu or system tray to reset Explorer process - This can resolve issues with window detection or stuck toolbar states
Plugin not loading
- Verify path uses curly brackets:
{path\to\plugin.dll} - Check plugin targets .NET Framework 4.7.2
- Enable console to see detailed error messages
- For C# source plugins, check logs for compilation errors
- Separate Process: Explobar runs independently - no risk to Explorer stability
- COM Automation: Safe, documented API for Explorer interaction
- Low-Level Keyboard Hook: System-wide shortcut monitoring
- Dynamic Plugin Loading: Reflection-based assembly loading at runtime
- Zero Services: No background services, no system modifications
Right-click tray icon for quick access:
- Icon Browser - Browse and extract icons from system files
- Edit Configuration - Open toolbar-items.yaml in Notepad
- Development - Developer tools submenu
- Create Plugin - Generate plugin template file
- Show/Hide Console - Toggle debug console window
- Open Logs - Open log file directory
- Restart Explorer - Restart Windows Explorer process
- About - Version and copyright information
- Exit - Close Explobar
Will arguebly work with all Windows but some features (e.g. NewTab) are specifically targeting Windows 10/11 only.
When an Explorer window contains multiple tabs open to folders with same names, it's impossible to reliably detect which tab is active due to Windows Explorer API limitations.
Impact: Will show a message box asking to close the duplicated tabs.
Workaround: Enable "Display the full path in the title bar" in Folder Options to improve tab detection reliability, or close duplicate/similarly-named tabs
Hash (#) Character:
- Explorer's COM API (
Navigate2) fails with paths containing# - Explobar automatically falls back to
explorer.exe, which opens the path in a new window instead of navigating the current tab.
- Explorer window must have mouse cursor over it to activate toolbar
- Explorer window must have focus for context detection
- Toolbar appears at cursor position, so cursor must be within Explorer bounds
- Only one instance of Explobar can run at a time
- Attempting to launch a second instance shows a warning message
- Allows configuration to be managed in one place but prevents multi-profile setups
- Uses low-level keyboard hook for global shortcut monitoring
- Potential conflicts with other applications using the same shortcuts
- System-wide shortcuts (
SystemWide: true) always active, even when Explorer doesn't have focus - No support for shortcut combinations with more than one modifier + key (e.g.,
Ctrl+Shift+Alt+Keynot supported)
- YAML syntax errors prevent configuration from loading (falls back to default config)
- Configuration changes apply when toolbar is next shown (not instantly for currently visible toolbar)
- No built-in YAML validation - must use external tools to validate syntax
- Duplicate shortcuts silently ignored (first one wins, others logged to console)
- Plugin paths must be enclosed in curly brackets:
{path\to\plugin.dll} - Plugins must inherit from
CustomButtonand implementICustomButton - Plugin assemblies are loaded via reflection and cannot be unloaded without restarting Explobar
- COM object separation errors possible when plugins interact with stale Explorer window references
- No hot-reload support - configuration changes require showing toolbar again
- C# Source Plugins: C# files (
.cs) are automatically compiled at runtime - Template Available: A comprehensive plugin template (
MyCustomButton.cs) is included in the release package - Language Support: C# 7.3 targeting .NET Framework 4.7.2
- Compilation Errors: Check logs (console or log files) for C# compilation errors
- GitHub: https://github.com/oleg-shilo/explobar
- Issues: https://github.com/oleg-shilo/explobar/issues
- Documentation: customization.md
- Author: Oleg Shilo
- YAML Parser: YamlDotNet
- Icon Extraction: IconExtractor
Explobar - Friction-free productivity for Windows Explorer
Note: The application is configured as a Windows Application. Console window is hidden by default but can be toggled via system tray menu or ShowConsoleAtStartup setting for debugging.
