It will support Vista.

Does anyone know why Dial-a-fix sometimes gets an "unspecified error" while trying to unregister MSXML3.DLL? It seems to be new because it's never done that in the past. Apparently you can immediately try it again and Dial-a-fix will then be able to unregister/re-register it. It's weird.

(Update: see the comments for a possible explanation. Short version: just run the same parts of Dial-a-fix again and you shouldn't get the error. If you still have trouble with Windows Updates, try clicking "Flush SoftwareDistribution".)

Perform a registry hive recovery using the information in my System Volume Information article for the hive mentioned after CONFIG\ (typically SYSTEM).

Sorry, Windows 2000 users, Microsoft hath cursed thee without an enabled-by-default automatic registry hive backup facility. Try ERUNT, though, and perform similar steps to roll back your failed SYSTEM hive when it inevitably fails.

I've started Dial-a-fix over and here is what I have so far:

daftest (1)

daftest (2)

daftest (3)

daftest (4)

daftest (5)


As you can see it's mostly empty (for now) but there are great plans.
Currently, the "Scan" button on the "Find issues" tab looks for over 40 separate problems relating to the registry, services/drivers, shell/Explorer.exe, and Internet Explorer. It also displays restrictive policies.

It's written in Delphi and coming along nicely. A few rules lists will be moved to outside of the program .exe for easier access (such as restrictive policies). It will support languages. It will support Vista, Server 2003, and XP Pro x64. It will still support Windows 98. You can even resize or maximize the window now.

I spent all weekend working on it, and I plan to spend all of next weekend working on it as well. I have a lot of work to do but I'll keep everyone posted.

Free copies of some of Microsoft's office software will soon be available. Microsoft said it would make ad-supported copies of the Works package available within "months".

The programs will not run in a web browser but will be installed on a PC and have their cost offset by running adverts while in use. Microsoft said the service would debut with Works 9.0 that was due to launch by the end of the year. Word processing and spreadsheet software are expected to be the main part of the package.

The ad-supported version will have a store of adverts it will show to people while they put together documents or spreadsheets. The store of ads would be refreshed every time that computer goes online. Microsoft has not said which PC makers it is working with on the project who will pre-install the ad-supported copies of Works.

The software company said the trial would run until mid-2008 and was being run to find out if it can generate enough cash to support such a service. The usual retail price of Works in the US is $39.99 (£20).

SP3

Filed Under XP | Leave a Comment

It appears that Microsoft has non-officially confirmed that there will be another service pack for Windows XP. According to an e-mail from a Microsoft spokesperson: "We're currently planning to deliver SP3 for Windows XP in the first half of CY2008. This date is preliminary, and we don't have any more details to share at this time."

A bit more info here.

I was going to edit the previous post, but making a new post will bump everyone's RSS, etc, so I am just making this stub to paste the URLs for each hour:
* 06/15/07 – Hour 1
* 06/15/07 – Hour 2

Don't forget about FREE Dial-a-fix support at Lunarsoft.net! Even if I'm too busy to be around, the regulars there know Dial-a-fix better than anyone and can definitely lead you in the right direction. Also, they'll help you with general computer/tech support problems too, not just with Dial-a-fix.

(Note: this is an article for technicians, so common technical terminology and procedures will not be spelled out.)

Most technicians are familiar with the issue where optical drives disappear from My Computer, only to be found in Device Manager with an exclamation point on them, indicating a problem.

Most technicians also have no idea what filter drivers are, or how this can happen, so I'm here to explain this and show you the proper way to repair a driver whose filter chain is broken.

I've noticed that most people completely blast all of the filter drivers away until it works, and although that works, it's really not the best way to go about things, especially since the other filters might be working properly. Also, don't you want to know the why and the how? This problem can apply to more than just optical drives.

Background information

A filter driver intercepts requests/communication in order to extend or replace functionality in the driver or hardware that it is filtering. There are three types of filter that you should know about: bus filter drivers, upper filter drivers, and lower filter drivers.

A bus filter driver extends functionality (usually for proprietary features) on a bus driver, such as ACPI. An ACPI filter driver, for example, could add additional power management modes or communicate with proprietary modifications to ACPI (such as in laptops).

An upper filter driver filters data between the main driver and the application/operating system service. Microsoft's example: a keyboard filter driver could perform additional security checks before passing the data along to the application or OS/module that is receiving the data.

A lower filter driver filters data between the hardware itself and the main driver, providing extra security/stability or translating proprietary communication into a standard language for the main driver. A good example of this is when you press a button on a piece of hardware: you may have only pressed the button once, but internally, the button may have made electrical contact repeatedly within mere milliseconds, sending more than one signal when only one was intended. A filter driver can recognize that this isn't intended behavior, and can refine the data to expected specifications (it turns multiple contacts into the intended 1 contact). This way, the main driver receives a stream of cleaned/stable data, and from the end user's perspective, everything is OK. Since hardware is physical and anything can go wrong, filter drivers are quite necessary for operating system sanity.

There are two ways to install a filter driver in Windows: at the class level, and at the device level. If you install a keyboard class filter driver, EVERY keyboard you ever install will be filtered by it. If you only install it on the device level (which is done by unique device ID), then it will only filter the exact device that you put it on originally and all other devices, even in the same class, will be unaffected.

Troubleshooting

Here's the part everyone is really reading this for. How do you know when you have a filter driver problem, and how do you properly solve it?

If you go into Device Manager and see a device with an exclamation point on it (CD-ROM or not) you should not immediately try to remove and refresh it. Double-click the device so you can see the error code. If it's anything other than "the drivers aren't installed for this device", then you should click the Details tab.

Pull down the drop-down box on the Details tab and look at the following four items:

  • Device Upper Filters
  • Device Lower Filters
  • Class Upper Filters
  • Class Lower Filters

In each of these sections, there may be zero or more items. Note the name of each item in each section. They are all drivers, so they should be in %systemroot%\System32\Drivers with a .sys extension. If you investigate your CD-ROM drive's filter drivers and notice GEARAspiWDM (for example), then you should find a corresponding GEARAspiWDM.sys file in the %systemroot%\System32\Drivers folder. If you don't find a corresponding file, then you've found a broken driver chain. Your next course of action is to either find the .sys file and put it in System32\Drivers and reboot, or remove the registry entry and reboot. In most cases you'll just be removing the registry entry that is pointing to a non-existent driver.

How does this happen? If you uninstall iTunes (for instance) then it will remove the GEARAspiWDM.sys file and its filter driver entry from the registry. If you then System Restore to a date prior to this uninstallation, it may or may not put back the .sys file but it will definitely put back the registry entry, and thus the filter chain will be broken. This can happen with any device, as all are capable of hosting filter drivers above or below the main driver. Again, this is not exclusive to that well-known CD-ROM drive problem.

Removing the registry entry

If the missing file came from either of the two "Class" filter categories, drill-down in Regedit to HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Class. Hit CTRL+F and type the entry as you saw it in Device Manager (i.e., "GEARAspiWDM" — without the .sys part) and try to find it. It should quickly bring you directly to the Upper or Lower filters value that contains this driver's reference. Double click the value that it was found in (in the right-hand pane of Regedit), and remove just the line of the missing file, leaving everything else alone (specifically anything that DOES actually exist in %systemroot%\System32\Drivers). Make sure there's only one item per line and that there are no blank lines and that you are modifying the intended driver. The (Default) value of every class key should describe the class' name in English (i.e., "DVD/CD-ROM Drives")

If the missing file name came from either of the two "Device" filter categories, drill-down to HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum. Hit CTRL+F and type the entry as you saw it in Device manager, etc, and remove the line in the same way as explained in the paragraph above this one. If more than one device is using this particular filter, then you will have to search again and remove it from each device.

After you've discovered and removed the offending filter driver entry from the registry, restart the computer. All should be well again at this point, if it was indeed just a filter driver problem. Try not to attempt to remove and reinstall the driver before at least rebooting first, as it should be fixed on the next system startup.

Windows Service Pack Road Map now gives a preliminary date for the much anticipated Service Pack 3 for your Windows XP.

SP3 for Windows XP is currently planned for the first half of 2008. This date is preliminary and subject to change. And it will…

Here I sit, for 20 minutes, with a drive connected via USB that contains sensitive data. Despite my best efforts, I am unable to "Safely Remove Hardware". It's not so much that there's probably a file handle locked that I can't possibly unlock (without writing my own software to do it) but that any time you remove a drive like this without properly dismounting it first, you are in for a stern talking-to. Windows gets angry with you if you just rip out the USB cable. Windows berates you for it. It's possible that forcing a drive dismounted could cause it to lose data (and I've seen it happen). This is still not the worst part. When I attempt to dismount the drive properly, Windows only says:
The device 'Generic volume' cannot be stopped right now. Try stopping the device again later.
Later? How soon is that? What kind of shit is this? "Try again later"? Why is Windows being so general and non-specific? Is Windows going to tell me when it's done using my drive so I can finally dismount it as it has yelled at me before to do?
No.
So here I sit, clicking safely remove over and over again, hoping Windows will finally finish doing what it is doing. Nope, it won't dismount. Now I *have* to rip the cord out (or restart the computer) if I want to get my work done. Special thanks to Windows for being a hypocritical asshole. I'm glad file locks get hung up so often, because I really hate it when I want to delete an empty folder and Windows actually lets me delete it.

// 08-09-05 (mm-dd-yy) —–
I forgot to mention: I usually use ForceDel.exe to unlock files and folders (it's a champ – just drag a file onto the .exe and presto, it's unlocked — unless it really *is* in use). It happens so frequently at work that ForceDel.exe is sitting right on my desktop, ready to have things dropped on it. (I'm lazy).

Edit (10-11-07): this is exactly as annoying in Vista as it is in XP and 2000. Ugh.