I don’t not how this got started, but at some point I noticed that more and more Metro apps (or Modern apps or Windows 8 apps or whatever you want to call them) were no longer working properly. I haven’t been able to locate a solution online, so I figured one out myself and document it here in case someone encounters the same problem.
Live tiles on the start screen were no longer showing updates, but instead had an X in the bottom right corner (see screenshot at the top). When started, these apps would either briefly display their splash screen and then terminate, or go back straight to the desktop.
Also, the apps no longer updated, showing the following error messages in the Windows Store (see screenshot on the left) and varying error codes, such as 0x80070002 or 0x80073D05.
Looking for Answers
I found descriptions of similar problems online, and even this quite comprehensive selection of fixes. Unfortunately, none of them worked for my particular case.
So I dug around in the Windows event log. Recent versions of Windows actually store quite a lot of information in there. And it’s much better structured than in earlier releases that lumped most events into just three sections: Applications, Security and System.
From my online research I knew that apps were being installed by a process called AppX deployment. So I looked through everything mentioning that in the event log and I found this error under Application and Service Logs\ Microsoft\ Windows\ AppXDeployment-Server\:
Cannot register the request because the following error was encountered during the registration of the windows.stateExtension extension: An error occurred while deleting the package’s previously existing application data.
Further research online showed that there are two locations where apps store data (possibly more that I don’t know of):
- On disk: C:\Users\<YourUserName>\AppData\Local\Packages
- In the registry: HKEY_CURRENT_USER\ Software\ Classes\ Local Settings\ Software\ Microsoft\ Windows\ CurrentVersion\ AppModel\ SystemAppData\
Turns out, it was data in the registry that was causing problems. I’m not sure how this is related, but in each of the affected apps’ keys there was an “invalid DWORD (32-bit) value” named STATE_LEFT_FROM_LAST_UNINSTALL. None of the working apps seemed to have had this value.
As I was trying to access the sub-key “PSR” of one of the applications that wasn’t running, I got the following error. Deleting the key didn’t work either.
Since I was denied access (though I had started regedit as an administrator), maybe the installer was denied access, too. Checking the permissions, I got this message and then an empty permissions dialog.
I couldn’t change the permissions for the app’s PSR in this dialog right away and I couldn’t even view the owner (under Advanced). But I could take ownership of that key and then I was able to grant myself full control over the key. And with full access I was now able to delete the key for the app, including the PSR key.
After I had repeated this for each one of the affected apps, I went back into Windows Store, retrying the installation. And lo and behold, all apps installed correctly and are now working properly.
I never found out why the permissions on those registry keys got messed up. I just know that through the process described above, I have got all my apps working again.
Unfortunately, I still have a problem with the OneDrive and Photos apps on Windows 8.1 as described in this post on the Microsoft support forums. But since OneDrive and Photos aren’t apps that are installed via the Windows Store, the above trick does not work on them. So I’m still trying to figure that one out…