是否有可能在Windows Server 2012 r2上安装.NET Framework 1.0,1.1,2.0?
我们需要一个在Visual Studio 2003/2005编译器上运行遗留构build的构build从站,我们希望有一台运行在新旧框架上的机器,而不是在两个系统上复制基础架构……让事情变得更有趣 – 我们需要从命令行/ PowerShell安装框架自动部署的奴隶…
在2012 R2上,1.0和1.1根本不被支持。 2.0包含在3.51框架中。
http://msdn.microsoft.com/en-us/library/hh925570%28v=vs.110%29.aspx
在Windows 8,Windows 8.1,Windows Server 2012或Windows Server 2012 R2上手动安装.NET Framework 1.1是不可能的。 它不再被支持。 如果尝试安装软件包,将显示以下错误消息:“安装程序无法继续,因为此版本的.NET Framework与以前安装的版本不兼容。 要解决此问题,请安装.NET Framework 3.5 SP1。 该版本包括Windows 8和Windows 8.1支持的.NET Framework 2.0(.NET Framework 1.1之后的发行版)。 您应该总是先尝试安装应用程序,以确定它是否会自动更新到.NET Framework的更高版本。 如果没有,请联系您的ISV以获取应用程序更新。
如果您尝试运行一个较旧的.NET EXE,Win8和Sever2012会popup一个窗口,说明它需要安装对.NET 2.0 – > .NET 3.5的支持(这些.NET生成代码可以在CLR v2上运行,因此是范围)。
作为一个实验,我相信我做了一个.NET 1.1“Hello World”。 我没有VS2003,将应用程序定位到.NET 1.x. 相反,为了做到这一点,我使用IL做了一个往返:ildasm / text hello.exe> hello.il ilasm hello.il / exe / out hello_1_1.exe /MDV=1.0.3705
原来的.NET 4 HelloWorld.exe只是运行。 我做了上面的更改,导致popup窗口出现。 我让MS安装.NET 2-3支持,并且.NET 1.1testing运行。 使用v2 CLR似乎很高兴。 (也许我欺骗了自己,因为我在.NET 4 PC上运行了ilasm)。
.NET加载器打开exe文件,从元数据版本string(MDV)获取.NET版本。 它试图find:HKLM \ Software \ Microsoft.NetFramework \ Policy \ Standards \ v1.0.3705。 当没有find它时,它检查一个姐妹关键\升级,它发现它可以映射v1.0.0-2.0.50727到.NET 2.0.50727。
这可能会失败,应用程序比“Hello World”更复杂。 这也不会欺骗安装程序,所以它只适用于install-by-xcopy应用程序。 另外MS将继续不支持1.x(很快2.x)。
我能够在Server 2012 R2上安装.net 1.1。 我将安装包下载到另一个系统,将其移到服务器上,开始安装,可以通过兼容性警告进行点击,并完成安装。 我还没有弄清楚什么因素会阻止安装,但是我和其他人一样,遇到了一个问题,我无法在服务器2012 R2上安装.net 1.1。 我正在做这个安装作为本地pipe理员。
这解释了如何:
基本上你可以启用IIS6的兼容性,安装框架和服务包。 然后添加isapi扩展到IIS(或者只是“允许”,因为安装程序应该安装它)。
在Windows 8,Windows 8.1,Windows Server 2012或Windows Server 2012 R2上手动安装.NET Framework 1.1是可行的。