News

'90s-Era File Manager Open Sourced, Available as Visual Studio Solution

Microsoft's Craig Wittenberg has revived the original File Manager that first came with Windows 3.0 in 1990, getting it to run on Windows 10 and making it available as a Visual Studio solution.

"The Windows File Manager lives again and runs on all currently supported version of Windows, including Windows 10," said Wittenberg in his GitHub WinFile project, which includes two primary source code version in the master branch:

  1. original_plus tag: refers to the source for WinFile as of Windows NT4 with minimal changes so that it compiles with Visual Studio and runs on current Windows.
  2. current master: contains Wittenberg's personal changes/additions to WinFile.

The project's /src directory is full of C programming language files, header files and a Winfile.sln Visual Studio solution that resulted from tweaking original WinFile source code in order to build with Visual Studio.

While File Manager was introduced with Windows 3.0, Wittenberg said his original_plus source code was copied from the November 2007 Windows NT 4 source tree.

Wittenberg had to tweak that original source code to get it to run on more modern Windows OSes, with changes including converting it to the Visual Studio solution that works on VS 2015 and VS 2017.

Many more tweaks were needed since 2007 -- incorporated in the master branch -- to get File Manager to run on Windows 10.

  1. OLE drag/drop support
  2. control characters (e.g., ctrl+C) map to current short cut (e.g., ctrl+c -> copy) instead of changing drives
  3. cut (ctrl+X) followed by paste (ctrl+V) translates into a file move as one would expect
  4. left and right arrows in the tree view expand and collapse folders like in the Explorer
  5. added context menus in both panes
  6. improved the means by which icons are displayed for files
  7. F12 runs notepad or notepad++ on the selected file
  8. moved the ini file location to %AppData%\Roaming\Microsoft\WinFile
  9. File.Search can include a date which limits the files returned to those after the date provided; the output is also sorted by the date instead of by the name
  10. File.Search includes an option as to whether to include sub-directories
  11. ctrl+K starts a command shell (ConEmu if installed) in the current directory; shfit+ctrl+K starts an elevated command shell (cmd.exe only)
  12. File.Goto (ctrl+G) enables one to type a few words of a path and get a list of directories; selecting one changes to that directory. Only drive c: is indexed.
  13. UI shows reparse points (e.g., Junction points) as such
  14. added simple forward / back navigation (probably needs to be improved)
  15. View command has a new option to sort by date forward (oldest on top); normal date sorting is newest on top

"The changes have been solely determined by my needs and personal use," Wittenberg said. "Some of the changes have limitations that fit the way I use the tool. For example, the path index which supports the new goto command only contains information for the c: drive." He noted he hadn't redesigned or restructured WinFile in any major way.

He also said he would consider bug fixes and minor changes for the master branch, but won't be making any such changes to the original_plus branch. "You are welcome do that on your own," he said.

The entire history of File Manager is available in a Wikipedia entry.

About the Author

David Ramel is an editor and writer at Converge 360.

comments powered by Disqus

Featured

  • IDE Irony: Coding Errors Cause 'Critical' Vulnerability in Visual Studio

    In a larger-than-normal Patch Tuesday, Microsoft warned of a "critical" vulnerability in Visual Studio that should be fixed immediately if automatic patching isn't enabled, ironically caused by coding errors.

  • Building Blazor Applications

    A trio of Blazor experts will conduct a full-day workshop for devs to learn everything about the tech a a March developer conference in Las Vegas keynoted by Microsoft execs and featuring many Microsoft devs.

  • Gradient Boosting Regression Using C#

    Dr. James McCaffrey from Microsoft Research presents a complete end-to-end demonstration of the gradient boosting regression technique, where the goal is to predict a single numeric value. Compared to existing library implementations of gradient boosting regression, a from-scratch implementation allows much easier customization and integration with other .NET systems.

  • Microsoft Execs to Tackle AI and Cloud in Dev Conference Keynotes

    AI unsurprisingly is all over keynotes that Microsoft execs will helm to kick off the Visual Studio Live! developer conference in Las Vegas, March 10-14, which the company described as "a must-attend event."

  • Copilot Agentic AI Dev Environment Opens Up to All

    Microsoft removed waitlist restrictions for some of its most advanced GenAI tech, Copilot Workspace, recently made available as a technical preview.

Subscribe on YouTube