在IIS中改变ASP.NET程序版本

在注册表 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework 可以读取到安装路径
如:C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\ 一般从路径就知道版本
也可以对里面的文件用GetFileVersionInfo来获取

在windows2003的iis6.0当中,在装过.NETFRAMEWORK1.1,和.NETFRAMEWORK2.0之后,在新建的ASP.NET应用程序中,查看属性,会出现ASP.NET的选项卡,在此可以更改该WEB应用程序是基于哪个框架运行的.

但是最近在装了64位的WINDOWSXP PROFESSIONAL后,找不到此选项卡了,只能通过如下方式修改:

在IIS管理器中,选择指定的WEB应用程序,右键-->属性-->configuration-->mapping-->根据需要修改映射

但是这种方法太麻烦,不能批量修改,使用如下这段批处理命令,可以轻松实现框架指定:

@echo off

set   /p   vp
="please input the virtual path:"

choice /c otc /m 
"press o for asp.net1.1, press t for asp.net2.0, press c for cancel"

if errorlevel 
3 goto end
if errorlevel 
2 goto two
if errorlevel 
1 goto one

:one
%SYSTEMROOT%Microsoft.NETFrameworkv1
.1.4322aspnet_regiis.exe -s W3SVC/1/ROOT/%vp%
goto end

:two
%SYSTEMROOT%Microsoft.NETFrameworkv2
.0.50727aspnet_regiis.exe -s W3SVC/1/ROOT/%vp%
goto end

:end
echo end
pause

在设置完后,还要记得修改应用程序池,基于不同版本的框架的程序,不能使用相同的应用程序池!!!

原文地址:https://www.cnblogs.com/ryb/p/763664.html