I'm pleased to announce the first stage of my roadmap to fully open Default Programs Editor with the release of Aero.Wizard and Aero.Controls.
What are Aero.Wizard and Aero.Controls?
Aero.Wizard is an WinForms implementation of an Aero Wizard Dialog. Aero.Controls is a package of a half dozen WinForms controls, intended for use with an Aero Wizard Dialog. These are some of the components I wrote for the creation of Default Programs Editor 2.0 with the revised user interface, and I'm now freely releasing them to the public.
- History/Navigation handled automatically
- Page contents are children of separate container controls, which can be created in design time like a regular Windows form
- Glass title area degrades gracefully when running a theme without glass, or on XP
- Blank Wizard Page template included
- Use with Aero.Controls pack to make Windows UX Guidelines compatible user interfaces
- Main Instructions Label
- Command Link button
- Instant Search Box
- UAC Shield Button
- Split Button
- Listview with Mixed State checkbox
- Aero Link Label
Both of these projects strive to adhere to the Windows User Experience Guidelines, freely available documentation from Microsoft which provided the basis for the DPE 2.0 restructuring.
I debated for some time on this issue, trying to figure out a permissive license where I could retain some amount of ownership without being overbearing. I settled on BSD, which in my opinion is very permissive and seems to be low-friction for other developers to use this code in their projects.
Both projects are hosted on Bitbucket (Mercurial) and you can either clone the repositories, or download the latest revision as a zip file. I encourage anyone to contribute bug fixes or report issues on each project's public issue ticketing system.
With the release of this code pack, my plan for fully releasing Default Programs Editor is underway. It is now possible to fully replicate the UI with this release. The next step is for me to continue refining and documenting the base file association library the project is built on, then release that as well as the UI logic for the program itself. Be looking for that in the next few months.
If you've ever clicked on some file in Windows and seen this dialog box, you know what I'm talking about:
The web service is completely useless, and most of the time you already know what program you want to use to open the file. Luckily, it is easy to disable this dialog box with Default Programs Editor (download). Simply launch the program, and click on the Options button:
Then, click the button that says
Disable 'Search web for unknown extension' Dialog Box
And that's it!
Now, when you try to open a file with an unknown extension, Windows will skip the unknown extension dialog and display the "Open With..." window to choose a program.
- Fixed a critical bug that caused an immediate crash on Vista x64.
- Added automatic online error reporting (can be disabled in Advanced Configuration).
- Added a friendly error dialog when the program crashes, replacing the generic .Net one.
- A couple of minor UI adjustments.
What information does the crash report have?
OS version, last executed method from a logging functions, and a stack trace. No personal identifying information. Each crash dump is saved to C:\Users\<user>\AppData\Local\factormystic.net\Default Programs Editor\<version>\ , which is also where the advanced.config file is saved.
The x64 bug was quite odd. I was initially debugging on a vanialla rtm install, and the program worked fine. It wasn't until I installed hotfix KB932471, an update for .Net 3.0, that it successfully crashed. I'm not sure exactly what changed in the framework to make it start crashing, but the bug was a relatively simple fix.