asp教程.net 程序IIS自动部署问题
创建虚拟目录的经过以下步骤:
1)获取该虚拟目录的上级目录的DirectoryEntry对象rootEntry;
2)通过rootEntry的DirectoryEntry::Childrens.Add来添加该虚拟目录;
//创建虚拟目录
DirectoryEntryentry=rootEntry.Children.Add(this.m_strAlias,"IIsWebVirtualDir");
3)更新该虚拟目录的属性,如更新身份验证模式,访问权限和所对应的物理目录等。需要注意的是,使用DirectoryEntry来创建虚拟目录,只能在该虚拟目录建立了以后,才能设置物理目录等属性。
创建虚拟目录的代码如下:
///
///创建iis虚拟目录
///
///虚拟目录操作异常
publicoverridevoidCreateDirectory()
{
//已不覆盖的方式创建虚拟目录,当虚拟目录存在时抛出异常
this.CreateDirectory(false);
}///
///创建iis虚拟目录
///
///是否覆盖掉原有的虚拟目录
///虚拟目录操作异常
publicoverridevoidCreateDirectory(boolbReplace)
{
//判断目录是否存在
if(this.Exist())
{
if(bReplace)
{
//若允许覆盖则先删除原有的虚拟目录
this.DeleteDirectory();
}
else
{
//若不允许覆盖直接抛出目录已存在的异常
DirectoryException.Throw("directoryalreadyexist");
}
}try
{
//获取上级目录的DirectoryEntry对象
DirectoryEntryrootEntry=SystemDirectory.GetParentEntry(this);
//创建虚拟目录
DirectoryEntryentry=rootEntry.Children.Add(this.m_strAlias,"IIsWebVirtualDir");
entry.Invoke("AppCreate",true);
entry.CommitChanges();
rootEntry.CommitChanges();//更新虚拟目录属性
SystemDirectory.UpdateEntry(entry,this.Property);
}
catch(System.Exceptionex)
{
DirectoryException.Throw(ex.Message);
}
}
DirectoryEntry的commitChanges方法用于提交DirectoryEntry的操作。line41中的提交了以后,该虚拟目录才能建立,然后在进行更新虚拟目录的属性的操作。若没有commitChanges就进行更新操作,会抛出找不到虚拟目录的异常,有兴趣的朋友可以试试。
2、删除虚拟目录:
删除虚拟目录比较简单,只需调用虚拟目录的父节点的DirectoryEntry对象的Delete操作就可以了,需要注意的是Delete对象需要两个参数:子节点的Alias和子节点的类型(虚拟目录节点的类型为IIsWebVirtualDir)。
///
///删除iis虚拟目录
///
///虚拟目录操作异常
publicoverridevoidDeleteDirectory()
{
//判断目录是否存在
if(!this.Exist())
{
//若待删除的虚拟目录不存在,则抛出异常
DirectoryException.Throw("directorydoesnotexist");
}try
{
//获取上级目录的DirectoryEntry对象
DirectoryEntryrootEntry=SystemDirectory.GetParentEntry(this);
//删除参数
object[]objParams=newobject[2];;
objParams[0]="IIsWebVirtualDir";
objParams[1]=this.m_strAlias;
//删除虚拟目录
rootEntry.Invoke("Delete",objParams);
rootEntry.CommitChanges();
}
catch(System.Exceptionex)
{
DirectoryException.Throw(ex.Message);
}
}
敢达决战官方正版 安卓版v6.7.9
下载敢达决战 安卓版v6.7.9
下载像素火影骨架佐助 (Perseverance Fire Shadow)手机版v1.16
下载要塞英雄 安卓版v33.20.0-39082670-Android
下载梦想城镇vivo最新版本 安卓版v12.0.1
梦想城镇vivo版是这款卡通风模拟经营类手游的渠道服版本,玩
怦然心动的瞬间 安卓版v1.0
怦然心动的瞬间是一款真人向的恋爱互动游戏,在游戏中玩家将扮演
曼尼汉堡店游戏 安卓版v1.0.3
曼尼汉堡店是一款非常好玩的精品恐怖类型冒险游戏,在这款游戏中
现代总统模拟器去广告版 安卓版v1.0.46
现代总统模拟器是一款休闲养成类游戏,可能对于不少的玩家来说都
现代总统模拟器付费完整版 安卓版v1.0.46
现代总统模拟器高级版在商店是需要付费的,相对于普通版本,高级