The Protected Storage service in Windows 2000 (and Windows XP) is used to store certain kinds of privileged information in Windows 2000, such as passwords entered into web browser form fields or used to connect to an Internet service provider. Under certain circumstances, the Protected Storage information in the Registry can become corrupt. This results in some peculiar behaviors that seem to have no obvious cause, such as:
- POP3 passwords in Outlook and other mail clients are not retained even though you have explicitly asked the program to do so.
- Scheduled Tasks do not run correctly, throwing a "0x80090016: Keyset does not exist" or "0x8009000f: Object already exists" error.
To repair problems with Protected Storage, you may have to erase the stored passwords, so be sure you have all of them on hand before proceeding.
- Look in Control Panel | Administrative Tools | Services and make sure the Protected Storage Service is running. It should be started, and set to start automatically. If it isn't, start it, and set it to start automatically. This is usually the reason for Scheduled Tasks not working correctly.
- Run REGEDT32 and open the key
HKEY_CURRENT_USER\Software\Microsoft\Protected Storage System Provider.
- In the Security menu for REGEDT32, click on Permissions, then Advanced.
- Click "Reset permissions for all child objects" and set the key to allow propagation of inheritable permissions.
- Click OK and say Yes to any dialogs that come up about inherited permissions.
- Under the Protected Storage System Provider subkey in the Registry, look for the user folders, which are designated with an "S-" prefix followed by a string of numbers. Delete them all. There may be many such folders if you have more than one user on the system.
- Close all programs and reboot.
- If needed, reset your mail clients to retain passwords, and test password retention.
Serdar Yegulalp is the editor of the Windows 2000 Power Users Newsletter.
This was first published in November 2002