Simple File Browser
A lightweight, portable Windows file browser designed to work on Windows Server Core, Hyper-V Core, and other minimal Windows installations where explorer.exe is not available.
What it does
This application provides a basic file manager interface using only standard Windows APIs that are present even on Server Core editions. It uses the same underlying Windows Shell and Common Controls components that applications like Notepad use for their File > Open dialog.
When you run Notepad on Server Core and click Open, a file browser dialog appears despite Explorer not being installed. That dialog works because it relies on comdlg32.dll, shell32.dll, and the Common Controls library (comctl32.dll) — all of which are present on Server Core. This application uses those exact same system libraries to provide a standalone file browser.
Features
- Browse folders and view files
- Navigate up to parent directories
- Address bar for direct path entry
- Double-click folders to enter them
- Double-click files to open them with their default application
- Displays file name, type, size, and modification date
- Uses native Windows system icons
- Single portable executable with zero external dependencies
Building
On Windows with PowerShell
.\build.ps1
On Windows with Command Prompt
build.bat
With MinGW (cross-compile from Linux, or build on Windows)
mingw32-make
or manually:
x86_64-w64-mingw32-gcc -O2 -mwindows -o SimpleFileBrowser.exe main.c -lcomctl32 -lshell32 -luser32 -lgdi32 -lkernel32 -ladvapi32
With Microsoft Visual C++
cl /O2 /W4 /Fe:SimpleFileBrowser.exe main.c /link user32.lib gdi32.lib kernel32.lib shell32.lib comctl32.lib advapi32.lib
Usage
Simply copy SimpleFileBrowser.exe to the target machine and run it. No installation is required.
SimpleFileBrowser.exe
The application starts in the current working directory.
Why this works on Server Core
Traditional Windows Explorer relies on many shell extensions and COM components that are stripped from Server Core. However, the fundamental Win32 API, Common Controls, and Shell API functions remain available. This application is intentionally built using only those core APIs:
CreateWindowEx/RegisterClassExfor the UIListViewfromcomctl32.dllfor the file listSHGetFileInfofromshell32.dllfor icons and file typesFindFirstFile/FindNextFilefor directory enumerationShellExecutefor opening files
These are the same APIs that power the classic Windows Open/Save dialogs you see in Notepad, which is why they work reliably even in minimal Windows environments.
Limitations
- No drag-and-drop support
- No right-click context menus
- No network drive browsing beyond what the Shell APIs provide
- Simple UI by design to maximize compatibility
License
Public domain or use as you see fit.