The first sign of a problem was localhost not responding. I checked to see if the web publishing service was running, which it wasn't. When I tried to start it I got
Error 1068, dependency service or group failed to start.I checked the IIS Admin service and found it wasn't running, either. When I tried to start that service I got:
Error 13, the data is invalid.I checked the system event log and found IIS Admin has been failing to start for several reboots. I don't access localhost on this machine very often so I'm not surprised I didn't notice this sooner.
Running sc query iisadmin from the command prompt showed the service stopped with an exit code of 0x8007000d.
SERVICE_EXIT_CODE: -2147024883 (0x8007000d)A search of the Web for some reference to that exit code turned up a suggestion the problem might be related to the metabase file in windows\system32\inetsrv. I found two files on my machine: MetaBase.bin.beforexmlupg, at about 225KB, and MetaBase.bin at over 2.5MB. A clue was the date stamp on MetaBase.bin was about the same as the date the event log showed the IIS Admin service began failing to run. The other file, MetaBase.bin.beforexmlupg, had an earlier date.
I don't know what MetaBase.bin.beforexmlupg is. I checked another Win XP SP2 machine and it didn't have that file. From its name and date stamp I figured it might be related to a security update I applied on or about that date, but that's pure speculation on my part. A search for that file name on MSDN and TechNet turns up no hits.
I'm no IIS expert, but assuming MetaBase.bin was invalid I moved it to a temporary directory (in case I needed it again) and copied MetaBase.bin.beforexmlupg back to MetaBase.bin. I figured this was risky, but I didn't have a lot to lose at that point. I then started the IIS Admin service: success. I started the web publishing service: success. And of course, localhost was back in business, too.
I certainly can't guarantee this solution will work on other machines or in other situations, but it did work in this case. I'm still searching for more information to find out what caused this problem in the first place.
Tags: Windows XP SP2, IIS Admin, MetaBase.bin, 0x8007000d