If the sound of helping family friends troubleshoot their computer problems makes you weep, then you have one more thing to look forward to in Windows 7. No, it won’t help novice users find that obscure “any” key, but Windows 7 will actually diagnose and fix many of its critical components as part of the new “Windows Troubleshooting” functionality.
For users who are currently using the 6801 build of Windows 7, you might have already noticed the “Troubleshooting” link in the control panel. However if you do try to click on any of the actions an error is prompted. But there’s another way. If you navigate to the “\Windows\diagnostics\system” directory, you’d find all of the troubleshooting files to manually initiate. Simply open a directory and double click on the file with the golden diamond.
For everyone who doesn’t have the build at hand, what this feature does is scan a number of predefined variables and offers actions to fix the problem. For example, this is the result of an attempt to troubleshoot power problems.
Before you brush this off as child’s play, like I mistakenly did, this is not your average Joe “click the green icon” troubleshoot. This tool doesn’t just flick a few switches, it actually dives into the nitty gritty core of Windows to do some pretty fine tuning.
For example, the above power troubleshoot actually adjusted my “hard disk burst ignore time”. I didn’t even know Windows could control that.
Now you’re probably left wondering how do they do it, and here’s where it gets even more interesting and potentially groundbreaking. The whole troubleshooting system runs on Windows PowerShell 2.0 scripting – the next-generation command line platform.
As proof, here is a snippet of the PowerShell script that was used to fix the burst time as indicated above.
If the lightbulbs hasn’t gone off in your head already, let me explain why I think this is groundbreaking. Windows now has the built-in capabilities to diagnose and fix problems not just limited to the select few the manufacturer (Microsoft) has defined, but any problem a third-party developer wishes to write the script for. I’m sure it’s a little more complicated than “find(problems);fix(problems);” but PowerShell is a pretty powerful platform and some of the troubleshooting scripts there already are quite elaborate.
I can’t wait till Microsoft releases more details about how this feature works and can be extended, but it looks they already have plans to update this over time. Imagine the day when all you have to do is send your uncle’s best friend’s brother a script to fix why he can’t watch his favorite DVD.