In the last 18 hours my Windows 7 Pro 64-bit machine has rebooted in response to the Windows Update applying patches.
Now I find when I try to start the VirtualBox Manager (not the actual VM’s which the manager manages, I don’t get that far) I get the message “.GLOBALROOTSystemRootSystem32.dll is either not designed to run on Windows or it contains an error”
When I search for this file at %systemroot%System32crypy32.dll it doesn’t exist.
It seems that the patching has wiped this file out ?
I have followed the advice from the dialog box of re-installing VirtualBox (both the version I was originally running and several later versions) but none of that helps (well actually I get different errors from the later versions but I would rather address this issue than wade into a other VirtualBox errors).
How can I most easily get a relevant copy of crypt32.dll ? I only have a recovery partition not the “original installation media”.
EDIT: Good advice from @Bob. Unfortunately, it seems, I’ve used up all my System Restore points in trying to fix this earlier. I’ve put up another question asking what options I have : Want to get rid of KB3004394 but used up all my restore points? .
EDIT: Here are the updates most recently applied to the machine in question:
Solution:
Looks like update KB3004394 is bugged in Windows 7 (fine in Windows 8):
- https://www.virtualbox.org/ticket/13677
- https://forums.virtualbox.org/viewtopic.php?f=6&t=65056
- https://answers.microsoft.com/en-us/windows/forum/windows_7-windows_update/windows-update-kb3004394-issues/ace25277-7f65-4486-bc44-c1b106907a18
You can temporarily work around this by uninstalling that update.
In fact, it may not be sufficient to merely uninstall the update – you might have to use System Restore to go back to a point prior to the update (the update itself should have created a restore point, so you can use that).