(本文适用于 Windows 8 企业版,不保证适用于其他版本)

微软一直在主推的 .NET 作为一个重要的应用运行平台对微软的生态系统具有重要的影响,在 Windows 8 中,这一应用程序运行的基石也将发展到最新版 .NET Framework 4.5。由于这一全新版本和以前的 .NET 2.0/3.0/3.5 运行库并不兼容,而 Windows 8 在内置 4.5 的同时并没有像 Windows 7 那样直接集成了 2.0/3.0/3.5,因此为先前版本开发的应用程序不能直接在 Windows 8 中运行,系统会自动向用户弹出如下提示:

p_w_picpath

 

 

以下是各个版本在 Windows 中的内置情况:

 .NET 2.0.NET 3.x.NET 4.x
Windows 7直接内置可手动启用通过安装包安装
Windows 8可手动启用(通过WU下载)可手动启用(通过WU下载)直接内置

默认情况下,用户在上述对话框提示中可以选择让 Windows 自动联网下载安装 .NET 2.0/3.0/3.5 组件,但很多用户报告的情况是,下载会失败(0x800F081F):

p_w_picpath

于是,有人又会想到直接去微软下载安装包,在本地运行安装。但遗憾的是,微软在官网上所提供的 .NET 3.5 安装包并是专为之前版本制作的,在 Windows 8 上无法安装,这一问题让很多初遇 Windows 8 的用户抓狂了。

其实,之所以不让运行独立版的安装程序,是因为 Windows 8 中本身就支持 .NET 旧版本的安装,只是安装包并没有像其他组件一样放在 Windows\winsxs 文件夹下,而是通过 Windows Update 提供,一旦联网失败,就会出现上述无法安装的尴尬。其实,鲜为人知的是,微软在 Windows 8 安装光盘中也放了一份 .NET 旧版本的安装文件副本,最后,我们可以通过这个副本来执行离线安装,方法如下:

  1. 双击 Windows 8 安装映像 ISO,将其将加载为虚拟光驱,资源管理器中会多出一个驱动器。
  2. 在开始页面键入cmd,然后按住Shift和Ctrl键并回车,这样以管理员身份运行命令提示符。
  3. 运行以下命令从安装盘安装.NET 2.0/3.0/3.5(注意X替换为ISO所加载的盘符):
    dism /online /enable-feature /featurename:NETFX3 /source:X:\Sources\sxs /LimitAccess

p_w_picpath

如果始终停留在 66.5% 进度上不动,可以关闭CMD窗口,重新从第2步开始执行。

最后,我们终于可以正常运行之前的 .NET 的应用程序了,Windows 8 的兼容性还是值得肯定的。
p_w_picpath

附:也可以把window8镜像文件解压到X盘符,并把上文的 source:X:\Sources\sxs  修改为 source:X:\镜像名\Sources\sxs   X是盘符名

 

原文地址:http://blog.wbpluto.com/2012/03/enable-netfs3-on-win8cp/