Open-Sourced Windows File Manager Gets New Life on Windows 10
Open-Sourced Windows File Manager Gets New Life on Windows 10
Microsoft has rummaged deep into its archive for its latest contribution to the open source community: Windows File Manager.
Originally bundled with Windows in 1990, File Manager was a replacement for the command-line interface in MS-DOS. The program was used to search, open, copy and delete files until it was replaced by Windows Explorer, which followed the introduction of Windows 95.
Craig Wittenberg, a veteran of Microsoft, has maintained the code since 2007, after copying it from the Windows NT 4 source tree in November of that year. He released the code this week on GitHub under an MIT license.
The branch named "original_plus" contains a very limited set of modifications to allow winfile.exe to run on today's version of Windows, according to Wittenberg.
Among the changes in original_plus:
- Converted to Visual Studio solution; works on VS 2015 and 2017
- Compiles and runs on 64-bit Windows (e.g. Get WindowLong -> Get WindowLongPtr, LONG -> LPARAM)
- Added header files stored in elsewhere in the NT source tree (e.g., wfext.h)
- Deleted some unused files (e.g. winfile.def)
- Converted 64-bit arithmetic from internal libraries to C
- Converted internal shell APIs to public APIs
A larger number of changes were made in master v10.0, which represent all the changes Wittenberg made since 2007. A summary of the changes:
- OLE drag/drop support
- Control characters (e.g. ctrll+C) map to current short cut (e.g. ctrl+C -> copy ) instead of changing drives
- Cut (ctrl + X) followed by paste (ctrl + V) translates into a file move
- Left and right arrows in the tree view expand and collapse folders like in Explorer
- Added context menus in both panes
- Improved icon display for files
- F12 runs notepad or notepad ++ on the selected file
- Moved ini file location to %AppData%\Roaming\Microsoft\WinFile
- File.search can include a date that limits files returned to after date is provided; output sorted by date instead of name
- File.Search includes option whether to include sub directories
- ctrl+K starts command shell (ConEmu if installed) in the current directory; shift+cntrl+K starts elevated command shell (cmd.exe only)
- File.Goto (ctrl+G) gets list of directories after typing a few words of a path
- UI shows reparse points
- Simple forward/back navigation added
- View command has new option to sort by date forward, meaning oldest first. Default is newest on top.
Nice
ReplyDelete