.Net goes a long way toward sandboxing all programmers
The chances of such a thing ever happening is marginal at best. MS implied
that the API in Vista would be primarily managed with unmanaged/COM as a
secondary route for programmers not willing to make the .NET leap - but it
never happened. The majority of Vista's API is still unmanaged, and I seem
to recall a variety of new bits were actually COM related (the supposedly
dead technology).
The progress is going slow, but the direction is
unmistakable. I think the main holdup on Vista
was the problem that .Net is simply far too bloated:
http://www.microsoft-watch.com/article2/0,1995,1820607,00.asp
If MS had wanted to try something like this, they could've done so with
COM - and they made more of an effort with that IMO given some of the APIs
that were available back in the Win2K (and prior) days.
Not to mention that if the Euro courts go nuts over something as simple as
an Office XML standard, something tells me MS wouldn't have much luck
forcing a .NET-only programming model down anyone's throats either
I don't think it's a matter of shoving it down anyone's
throat. It's a gradual transition, based on the idea that
selling software has seen its heyday and that services
are the way of the future. (Or at least it's the only idea
anyone has right now for keeping profits up.)
There have been great strides already made in the direction
of a services appliance. In 1999 people were outraged to find
that Windows Update was recording registration data from
visitors. MS promised to stop. By the time of WinXP we had
an OS that updates itself without asking, even if you tell it not to...
An OS that's basically spyware... An OS that reports home
periodically for various things, not least of which is WGA
software that challenges your ownership of the Windows install
every 2 weeks. As I understand it, on Vista even the "real"
admin. can't control the system folder. Only MS has rights there.
Meanwhile, any software that's not signed with MS authenticode
elicits security warnings. And with Vista the average Windows
user is being acclimated to having the same rights on their own
PC as a corporate employee has at work.
In all of those cases there are one or more valid reasons
for the changes made. Nevertheless, those changes are
all going in one direction. They all dovetail with Microsoft's
stated plans. And they're all serving to gradually acclimate both
programmers and end users to the notion that what happens on
their PC is not under their control. Meanwhile, people are
encouraged to pay for software by subscription and are being
acclimated to software that "needs" to check online for
updates on a regular basis....software that blurs the line
between online and local.
MS doesn't need to shove anything down anyone's throat.
They can just gradually make it more and more awkward for
"unmanaged" code to run, while simultaneously increasing the
limits on what unmanaged code is capable of doing, and at
the same time expanding their online offerings.