I spent two weeks, off and on, scrubbing, cleaning, de-corrupting, re-enabling, uninstalling, reinstalling , re-updating and swearing lengthily at every database, module, capability, bit of code and, finally, deep history of Outlook as I manually deleted from the registry every mention of Outlook, Office, Windows, Bill Gates or any of the words I was using at the time, in a final, pointlessly labor-intensive effort
The problem I learned this morning from a matter-of-fact "try this" posting from an MS staffer was that an update for one of the various evolutionary layers of the .NET Framework had either failed or corrupted some other part of the framework, so none of them were working correctly.
It's pedantic to mention—but is important to Windows itself, so I will do so anyway – that .NET has become so much a part of every application process on Windows machines that having it not work correctly – let alone corrupting it with an update designed to fix an earlier flaw, then not noticing you'd done it – is the kind of error a plumber makes by removing all the water piping from inside a house, reassembling it outside, where the light is better, and leaves, charging for a job well done because all the pieces fit together more neatly than they ever did before, which would be obvious if the home owners would just look out the window.
Put all your eggs in one basket, and then watch that basket
The problem is not in the development tools though. It's in the troubleshooting and self-awareness of Windows itself.
At one point, a few weeks ago, after I installed and experimented with a client-side network load balancer and a VPN product in the same week, Windows 7 decided it could not detect a network interface card of any kind in the computer, despite using it for a perfectly functional broadband Internet connection, showing the adapter just as usual within Device Manager, and saying in the Properties window that the Internet connection was fine and the "device is working properly."
How it worked properly while being invisible is a puzzle, as is Windows' inability to notice that large chunks of the .NET code base I updated and patched religiously had stopped functioning.