用程序修改IIS目录的Asp.Net版本

所属分类: 网络编程 / ASP.NET 阅读数: 1612
收藏 0 赞 0 分享
但是这些文章只介绍如何来创建、删除一个虚拟目录,却没有介绍如何修改一个虚拟目录的Asp.Net版本.如果机子上装有两个版本以.Net FrameWork,在创建时将使用IIS中默认使用的版本,而默认的版本又不是你需要的,那怎么办?在部署后手动修改?还是在部署时直接使用程序修改呢? 
本文将介绍一个方法用于修改虚拟目录的Asp.Net版本. 

ASP.NET IIS 注册工具 

使用ASP.NET IIS 注册工具 (Aspnet_regiis.exe)可以方便地更新 ASP.NET 应用程序的脚本映射,使其指向与该工具关联的 ASP.NET ISAPI 版本. 
关于ASP.NET IIS 注册工具的更详细的内容,请参考MSDN. 
在控制台上我们使用下面的命令可以修改一个虚拟目录的Asp.Net版本: 

Aspnet_iis.exe –s path 

我们知道了如何来修改一个虚拟目录的版本,现在的问题就是如何使用程序来实现它了. 

以下代码基于.Net FrameWork 2.0 在Windows Xp sp2中编译通过: 

复制代码 代码如下:

//创建一个虚拟目录  
DirectoryEntry dirRoot = new DirectoryEntry("IIS://localhost/W3SVC/1/Root");  
DirectoryEntries dirs = dirRoot.Children;  
DirectoryEntry virtualDir = dirs.Add("VirtualChange", dirRoot.SchemaClassName);  
object[] objs = new object[] { true };  
virtualDir.Invoke("AppCreate", objs);  
virtualDir.Properties["AppFriendlyName"][0] = "VirtualChange";  
virtualDir.Properties["Path"].Value = "C:\\VirtualChange";  
virtualDir.CommitChanges();  
//启动aspnet_iis.exe程序  
string fileName = Environment.GetEnvironmentVariable("windir") + @"\Microsoft.NET\Framework\v1.1.4322\aspnet_regiis.exe";  
ProcessStartInfo startInfo = new ProcessStartInfo(fileName);  
//处理目录路径  
string path = virtualDir.Path.ToUpper();  
int index = path.IndexOf("W3SVC");  
path = path.Remove(0, index);  
//启动aspnet_iis.exe程序,刷新教本映射  
startInfo.Arguments = "-s " + path;  
startInfo.WindowStyle = ProcessWindowStyle.Hidden;  
startInfo.UseShellExecute = false;  
startInfo.CreateNoWindow = true;  
startInfo.RedirectStandardOutput = true;  
startInfo.RedirectStandardError = true;  
Process process = new Process();  
process.StartInfo = startInfo;  
process.Start();  
process.WaitForExit();  
string errors = process.StandardError.ReadToEnd();  
if (errors != string.Empty)  
throw new Exception(errors);  
Console.WriteLine(process.StandardOutput.ReadToEnd());
更多精彩内容其他人还在看

解析WPF实现音频文件循环顺序播放的解决方法

本篇文章是对WPF实现音频文件循环顺序播放的方法进行了详细的分析介绍,需要的朋友参考下
收藏 0 赞 0 分享

解决.net framework 4.0环境下遇到版本不同编译不通过的方法详解

本篇文章是对.net framework 4.0环境下遇到版本不同编译不通过的解决方法进行了详细的分析介绍,需要的朋友参考下
收藏 0 赞 0 分享

将文件上传、下载(以二进制流保存到数据库)实现代码

将文件以二进制流的格式写入数据库:首先获得文件路径,然后将文件以二进制读出保存在一个二进制数组中具体请祥看本文,希望对你有所帮助
收藏 0 赞 0 分享

点击提交按钮后DropDownList的值变为默认值实现分析

在点击提交按钮后,页面上所有的绑定到数据库的控件值都恢复到默认值,下面与大家分享下DropDownList的值变为默认值
收藏 0 赞 0 分享

ASP.NET web.config中数据库连接字符串connectionStrings节的配置方法

ASP.NET web.config中数据库连接字符串connectionStrings节的配置方法,需要的朋友可以参考一下
收藏 0 赞 0 分享

Linkbutton控件在项目中的简单应用

Button控件可分为button控件、LinkButton控件、ImageButton控件三类,而LinkButton控件则在页面上显示为一个超级链接,下面与大家分享下其具体应用
收藏 0 赞 0 分享

Web.config 和 App.config 的区别分析

Web.config 和 App.config 的区别分析,需要的朋友可以参考一下
收藏 0 赞 0 分享

基于.Net中的数字与日期格式化规则助记词的使用详解

本篇文章是对.Net中的数字与日期格式化规则助记词的使用进行了详细的分析介绍,需要的朋友参考下
收藏 0 赞 0 分享

解决在Web.config或App.config中添加自定义配置的方法详解

本篇文章是对在Web.config或App.config中添加自定义配置的方法进行了详细的分析介绍,需要的朋友参考下
收藏 0 赞 0 分享

深入本机影像生成器(Ngen.exe)工具使用方法详解

本篇文章是对本机影像生成器(Ngen.exe)工具使用方法进行了详细的分析介绍,需要的朋友参考下
收藏 0 赞 0 分享
查看更多