三度网教程:是一个免费提供流行视频软件教程、在线学习分享的学习平台!

Asp.net完成IIS控制管理(Web虚拟目录的创建及管理)

时间:2024/6/13作者:未知来源:三度网教程人气:


(一)CreateWebDir.cs 使用示例

      string sServer = "localhost";
      string VirtualDir = "Bug2004";                   \\虚拟目录
      string PathDir    = @"D:\myWebDirTest\Bug2000"   \\物理目录

   IISManager iisMg = new IISManager(sServer);
   iisMg.Connect();
   
   if (iisMg.Exists(VirtualDir]))
   {
    Console.Write(VirtualDir+ " is exist!");
   }
   else
   {
    myINI.IniWriteValue("WebDir","WebDirExist","false");

    iisMg.get_AnonymousUser();
    string[] anonymousUser = new string[2];
    anonymousUser[0] = iisMg.AnonymousUserName ;
    anonymousUser[1] = iisMg.AnonymousUserPass ;

    VirtualDirectory newVirDir = new VirtualDirectory(VirtualDir,PathDir,anonymousUser);
    if (iisMg.Create(newVirDir))
     Console.Write(VirtualDir+ " 创建成功!");
    else
     Console.Write(VirtualDir+ " 创建不成功!");
   }

   iisMg.Close();

(二)CreateWebDir.cs 是转贴过来的,我作了些完善和修改

///***********************************************************
///**************                IIS控制管理类                **************
///************** 转贴自: 飞刀 http://www.aspcn.com *************
///***********************************************************
using System;
using System.Data;
using System.DirectoryServices;
using System.Collections;

namespace CreateWebDir
{
/// <summary>
/// IISManager 的摘要说明。
/// </summary>
public class IISManager
{
  //定义需要使用的
  private string _server,_website,_AnonymousUserPass,_AnonymousUserName;
  private VirtualDirectories _virdirs;
  protected System.DirectoryServices.DirectoryEntry rootfolder;
  private bool _batchflag;
  public IISManager()
  {
   //默认情况下使用localhost,即访问本地机
   _server = "localhost";
   _website = "1";
   _batchflag = false;
  }
  public IISManager(string strServer)
  {
   _server = strServer;
   _website = "1";
   _batchflag = false;
  }
  /// <summary>
  /// 定义公共属性
  /// </summary>

  public void get_AnonymousUser()
  {
   _AnonymousUserPass="IUSR_DEVE-SERVER";
   _AnonymousUserName="IUSR_DEVE-SERVER";
   VirtualDirectory vDir;
   try
   {
    Hashtable myList = (Hashtable)_virdirs;
    IDictionaryEnumerator myEnumerator = myList.GetEnumerator();
    while ( myEnumerator.MoveNext() )
    {
     vDir = (VirtualDirectory)myEnumerator.Value;
     if (vDir.AnonymousUserName!="" && vDir.AnonymousUserPass != "")
     {
      _AnonymousUserName=vDir.AnonymousUserName;
      _AnonymousUserPass=vDir.AnonymousUserPass;
      break;
     }
    }
   }
   catch
   {
    _AnonymousUserPass="IUSR_DEVE-SERVER";
    _AnonymousUserName="IUSR_DEVE-SERVER";
   }
  }
  public string AnonymousUserName
  {
   get{ return _AnonymousUserName;}
   set{ _AnonymousUserName = value;}
  }
  public string AnonymousUserPass
  {
   get{ return _AnonymousUserPass;}
   set{ _AnonymousUserPass = value;}
  }
  //Server属性定义访问机器的名字,可以是IP与计算名
  public string Server
  {
   get{ return _server;}
   set{ _server = value;}
  }
  //WebSite属性定义,为一数字,为方便,使用string
  //一般来说第一台主机为1,第二台主机为2,依次类推
  public string WebSite
  {
   get{ return _website; }
   set{ _website = value; }
  }

  //虚拟目录的名字
  public VirtualDirectories VirDirs
  {
   get{ return _virdirs; }
   set{ _virdirs = value;}
  }
  ///<summary>
  ///定义公共方法
  ///</summary>

  //连接服务器
  public void Connect()
  {
   ConnectToServer();
  }
  //为方便重载
  public void Connect(string strServer)
  {
   _server = strServer;
   ConnectToServer();
  }
  //为方便重载
  public void Connect(string strServer,string strWebSite)
  {
   _server = strServer;
   _website = strWebSite;
   ConnectToServer();
  }
  //判断是否存这个虚拟目录
  public bool Exists(string strVirdir)
  {
   return _virdirs.Contains(strVirdir);
  }
  //添加一个虚拟目录
  public bool Create(VirtualDirectory newdir)
  {
   string strPath = "IIS://" + _server + "/W3SVC/" + _website + "/ROOT/" + newdir.Name;
   if(!_virdirs.Contains(newdir.Name)

关键词:  Asp.net完成IIS控制管理(Web虚拟目录的创建及管理)





Copyright © 2012-2018 三度网教程(http://www.3du8.cn) .All Rights Reserved 网站地图 友情链接

免责声明:本站资源均来自互联网收集 如有侵犯到您利益的地方请及时联系管理删除,敬请见谅!

QQ:1006262270   邮箱:kfyvi376850063@126.com   手机版