Thoughts about setup and deployment issues, WiX, XNA, the .NET Framework and Visual Studio
All postings are provided AS IS
with no warranties, and confer no rights. Additionally, views expressed
herein are my own and not those of my employer, Microsoft.
Recently, while investigating an issue related to a .NET Framework hotfix installation problem, I reviewed the contents of the System Update Readiness Tool knowledge base article. I noticed that the contents have been updated since the release of Windows 8. Instead of needing to download and run a separate tool, the diagnostic and repair functionality in the System Update Readiness Tool is now built into Windows in Windows 8 and Windows Server 2012. This change should make it much easier to investigate and fix issues on Windows 8 and Windows Server 2012 such as the one I described a while ago in this blog post.
You can find more detailed information about how to use System Update Readiness Tool functionality in Windows 8 and Windows Server 2012 in this blog post from the Windows servicing team.
Another great command you can use with /Cleanup-Image is /StartComponentCleanup, this will check if any updates are superseded and it will uninstall them
dism /online /Cleanup-Image /StartComponentCleanup
I've written that command in Windows 8, but it says "Error: 87".
Any idea which coul help me?
I have the same problem with mine.
Hi Muser and Monique Mitchell - I've been able to run this command line with no issues on my Windows 8 and Windows 8.1. computers: dism /online /Cleanup-Image /StartComponentCleanup
Error code 87 means "The parameter is incorrect." I saw this error when I ran the command line on a Windows 7 computer. You will see this error if you try to run this command line on a version of Windows that is older than Windows 8. The /StartComponentCleanup switch is only available in Windows 8 and newer versions of Windows.
I have also seen Error code 87, which can also be that you are not putting a space in front of the /. It should be dism /online, not dism/online. Aaron has it correct in his post, but I have run into that before and it took me a while to figure that out
With the /StartComponentCleanup, using the /ResetBase parameter will re-init the component store (permanently erasing any superseded component and so, it is a WARNING, making inpossible to uninstall updates ), reducing component store real size. Size may be monitored with the command
Dism.exe /Online /Cleanup-Image /AnalyzeComponentStore
executed before and after.
Using the /StartComponentCleanup is usually not very useful as there is a monthly scheduled task in the / microsoft / windows / servicing schedule named StartComponentCleanup who does the job automatically for you.
Hi François - Thank you for posting these additional details about Dism.exe command line usage.
Just a note, /AnalyzeComponentStore and /ResetBase are NOT supported in version prior to Windows 8.1 or Windows Server 2012 R2. I should have said this in my first post.
And another warning, if your Windows Update site is not the Microsoft site but a secondary site (at work), the /RestoreHealth may not work as expected because some images may not be available on a secondary Windows Update site. For this case, use /LimitAccess to disallow DISM from contacting Windows Update for repair. This is probably already mentioned in the blog linked above but not bad to have this here.