【问题标题】:listing virtual directories in IIS 6.0 - C#在 IIS 6.0 中列出虚拟目录 - C#
【发布时间】:2011-09-16 10:53:48
【问题描述】:

我编写了一个 Windows 应用程序。我的问题是:我一直在 IIS 6.0 中列出虚拟目录,代码如下。我必须找到所选虚拟目录的 pyhsical 路径。 此外,DirectoryEntry 类有一个名为properties 的属性。但是,我不能使用它。最后,我收到以下错误。

   The directory cannot report the number of properties

代码:

  try

  {

  string serverName = "localhost";

  string VirDirSchemaName = "IIsWebVirtualDir";

  iisServer = new DirectoryEntry("IIS://" + serverName + "/W3SVC/1");

  DirectoryEntry folderRoot = iisServer.Children.Find("Root",VirDirSchemaName);

  return folderRoot.Children;

  }

  catch (Exception e)

  {

  throw new Exception("Error while retrieving virtual directories.",e);

  }

【问题讨论】:

    标签: c# iis-6


    【解决方案1】:

    你为什么不使用 WMI

     using System.DirectoryServices;
    
        private DirectoryEntry _iisServer = null;
        private DirectoryEntry iisServer
        {
            get
            {
                if (_iisServer == null)
                {
                    string path = string.Format("IIS://{0}/W3SVC/1", serverName);
                    _iisServer = new DirectoryEntry(path);
                }
                return _iisServer;
            }
        }
    
        private IDictionary<string, DirectoryEntry> _virtualDirectories = null;
        private IDictionary<string, DirectoryEntry> virtualDirectories
        {
            get
            {
                if (_virtualDirectories == null)
                {
                    _virtualDirectories = new Dictionary<string, DirectoryEntry>();
    
                    DirectoryEntry folderRoot = iisServer.Children.Find("Root", VirDirSchemaName);
                    foreach (DirectoryEntry virtualDirectory in folderRoot.Children)
                    {
                        _virtualDirectories.Add(virtualDirectory.Name, virtualDirectory);
                    }
                }
                return _virtualDirectories;
            }
        }
    

    List all virtual directories in IIS 5,6 and 7

    【讨论】:

      猜你喜欢
      • 2010-09-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-07-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多